In this article I will share with you a starter that has been pretty useful for some of my web projects :)
What does it bring ?
- an isolated docker environment with a local frontend / backend / database launchable in one command
- a project structure with an authentication
- a foundation on which features can be added
- a deployment guide to AWS infrastructure
- continuous integration with Github Actions
- last but not least, almost 30 hours work saved :')
How does it work ?
The frontend, backend, and database are wrapped in docker to avoid any issue with OS or local configurations. You can fire up everything with one command : docker-compose up
.
Frontend and backend are defining an architecture and a naming conventions to ease the comprehension of the starter and the share of feature around it.
Add features on it ?
Some modules are also available to be added on top of it. You can use them and plug it, they are fully adapted to the starter structure :)
Here is some available modules for this starter :
- multilingual with Phrase
- Payment system with Stripe
- Webcam with React
- Websocket with AWS API Gateway
- Location by ip
- ...
All module are listed and available for download here. There is much more module to be created, so feel free to create your own and share it with the community :D
Deployment and continuous integration ?
For the deployment steps, you'll have to create a RDS database, an Elastic Beanstalks, a S3 bucket and a CloudFront instance.
For the continuous integration, you'll have to edit
.github/workflows/main.yml
to set up :
- branch name on which you want to trigger continuous integration (generally
master
ormain
) - name of your
S3 bucket
- name of your
Elastic Beanstalk
Add your AWS credentials as secrets to your GitHub repository (AWS_ACCESS_KEY_ID
, AWS_SECRET_ACCESS_KEY
) .
Conclusion
I hope this starter will help you starting your future project!
If you have any question I'll be present in the comment section !
The platform sharing the starter and it's modules :
Fast Modular Project
Do not hesitate to pin and like if you appreciated the article ❤️
Top comments (0)