- Use git for version control. Follow this simple workflow model.
- Create separate folders for frontend and backend components especially if using the MERN stack. You can also create a data folder inside the backend. An example application template.
- Use config files to set values for database configuration such as dbhost, dbuser, dbpass, dbname.
- Create .sql files that contains initialization data and stored procedures.
- Use relative URLs in your app.
- Write an INSTALL text file that describes how to install your application. Indicate the dependencies (OS version, package names, version number). If possible, create an install.sh or setup.sh to automate the installation process.
- Use a coding convention for naming variables, functions, methods, etc.
- Do not store passwords in plaintext.
- Learn Docker and Docker Compose and TravisCI. Check my app template.
- Write automated tests.
- (more to follow)