Dazibao is a project in collaboration with Hugo Gamblin. This project was presented as part of his final defense for his Master at École de Condé.
Dazibao is aimed to showcase various prints and their meaning on society in an interactive experience.
This project is composed of:
- Node.js for the server - serving as an admin door for content management as the use of a CMS was overkill.
- React for the Web Client - No SSR involved.
- An NGINX container, responsible for rerouting between the client and server.
All the parts have been dockerized for an easy and accessible onboarding.
In order to make everything working, you'll have to follow some steps
All you need is docker. Download docker from their site.
Then, launch the following command in the root directory
First, clone the repository in recursive mode
git clone git@github.com:agamblin/dazibao.git
docker-compose up --build
The website is available in localhost:8081
The API is available in localhost:8080
You can also access it by typing localhost:8081/api who will redirect you automatically to the API
The database is a MySQL 5.7 automatically created for you with docker
The database is available in localhost:33061 (127.0.0.1)
You can acess the database with the following credentials:
Username: root
Password: 9uOxHyH9
To run the tests you'll have to follow some steps.
After launching
docker-compose up
You can either go in the client direcotry and type yarn test
, same way for the server.
It will access automatically the container and launch the tests.
You can also specify a certain path for your test suit if you don't want all the tests to be run:
yarn test /src/tests/your/super/test/suite
#OR
Follow this commands:
2. Grab the ID of the API's container otherwise grab's the one from the client if you want to launch test on client
Deployment is pretty straightforward. Actually we use some auto-deploy given by travis on AWS when we push on master branch. All is hosted on an elasticBeanstalk instance on the aws cloud.
We use SemVer for versioning. For the versions available, see the tags on this repository. .
This project is licensed under the MIT License - see the LICENSE.md file for details
- Hat tip to anyone whose code was used