Skip to content

diverso-lab/webspl

Repository files navigation


WebSPL

A new way to generate websites
Report Bug · Request Feature

About The Project

WebSPL provides an interface for website modeling through different technologies. The main goal is to prove the utility of Features Model and Configurability as an automatic website builder and validator tool.

Workflow explained:

  • User logs-in the website, creating a new user.
  • Navigates to the configurator, and start selecting the features needed + providing some more information (web name, email...)
  • Once the user has finished the selection, hit enter and wait.
  • Now, the website is being tested with FLAMA, which is an automated tool for feature model analysis.
  • Once everything is ready, the website gets created through Docker, installs all the needed features and gets automatically deployed in the localhost.

There are a few known bugs that we acknowledge, described in the projects section. If you detect any other new bug, please consider reporting it!

(back to top)

Built With

(back to top)

Getting Started

You will need Docker, Composer and Python (>=3.9) for the project to work.

To get a local copy up and running follow these simple example steps.

Instalation

  1. Clone the repository

  2. Install the python requisites:

pip install -r requirements.txt
  1. Install composer dependencies:
composer install
  1. Update the .env file providing the HOME_PATH and the DB connection

  2. Migrate the DB:

php artisan migrate:fresh
  1. Run the app:
php artisan serve

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)