Tweaked README.md

This commit is contained in:
2021-07-25 20:35:34 +01:00
parent 69c297fa74
commit 269caac88c
+91 -89
View File
@@ -1,89 +1,91 @@
# MERN-template # MERN-template
A website template using the MERN stack. The primary technology involved is: A website template using the MERN stack. The primary technology involved is:
* React * React
* Nodejs * Nodejs
* MariaDB (with Sequelize) * MariaDB (with Sequelize)
* Docker (with docker-compose) * Docker (with docker-compose)
This template is designed to support the development of persistent browser based games (PBBGs), but it, and it's component microservices, can be used elsewhere. This template is designed to support the development of persistent browser based games (PBBGs), but it, and it's component microservices, can be used elsewhere.
This template is released under the zlib license (see LICENSE). This template is released under the zlib license (see LICENSE).
See the [github wiki](https://github.com/krgamestudios/MERN-template/wiki) for full documentation. See the [github wiki](https://github.com/krgamestudios/MERN-template/wiki) for full documentation.
# Microservices # Microservices
There are external components to this template referred to as "microservices". These can be omitted entirely by simply removing the React components that access them. These are also available via [docker hub](https://hub.docker.com/u/krgamestudios). There are external components to this template referred to as "microservices". These can be omitted entirely by simply removing the React components that access them. These are also available via [docker hub](https://hub.docker.com/u/krgamestudios).
* News Server: https://github.com/krgamestudios/news-server * News Server: https://github.com/krgamestudios/news-server
* Auth Server: https://github.com/krgamestudios/auth-server * Auth Server: https://github.com/krgamestudios/auth-server
* Chat Server: https://github.com/krgamestudios/chat-server * Chat Server: https://github.com/krgamestudios/chat-server
# Setup Deployment # Setup Deployment
A clean install is this easy: A clean install is this easy:
``` ```
git clone https://github.com/krgamestudios/MERN-template.git git clone https://github.com/krgamestudios/MERN-template.git
node configure-script.js cd MERN-template
docker-compose up --build npm install
``` node configure-script.js
docker-compose up --build
# Setup Development ```
To set up this template in development mode: # Setup Development
1. Ensure mariadb is running in your development environment To set up this template in development mode:
2. Run `mariadb sql/create_database.sql` as the root user
3. Run `npm install` 1. Ensure mariadb is running in your development environment
4. Run `cp .envdev .env` and enter your details into the `.env` file 2. Run `mariadb sql/create_database.sql` as the root user
5. Execute `npm run dev` 3. Run `npm install`
6. Navigate to `http://localhost:3001` in your web browser 4. Run `cp .envdev .env` and enter your details into the `.env` file
5. Execute `npm run dev`
# Features List 6. Navigate to `http://localhost:3001` in your web browser
- Mainly one language across the codebase (JavaScript) # Features List
- Full documentation
- Setup tutorial - Mainly one language across the codebase (JavaScript)
- Fully Featured Account System (as a microservice) - Full documentation
- Email validation - Setup tutorial
- Logging in and out - Fully Featured Account System (as a microservice)
- Account deletion - Email validation
- Password management - Logging in and out
- JSON web token authentication - Account deletion
- Fully Featured News Blog (as a microservice) - Password management
- Publish, edit or delete articles as needed - JSON web token authentication
- Secured via admin panel - Fully Featured News Blog (as a microservice)
- Fully Featured Chat System (as a microservice) - Publish, edit or delete articles as needed
- Available when logged in - Secured via admin panel
- Chat logs saved to the database - Fully Featured Chat System (as a microservice)
- Room-based chat (type `/room name` to access a specific room) - Available when logged in
- Moderation tools - Chat logs saved to the database
- Permanently banning users - Room-based chat (type `/room name` to access a specific room)
- Chat-muting users for a time period - Moderation tools
- Users reporting offensive chat-content - Permanently banning users
- Easy To Use Configuration Script - Chat-muting users for a time period
- Sets up everything via docker - Users reporting offensive chat-content
- A default admin account (if desired) - Easy To Use Configuration Script
- Sets up everything via docker
# Coming Soon - A default admin account (if desired)
- Full documentation # Coming Soon
- Modding tutorials
- Full documentation
# Coming Eventually - Modding tutorials
- Fully Featured News Blog (as a microservice) # Coming Eventually
- Restore deleted articles
- Undo edits - Fully Featured News Blog (as a microservice)
- Fully Featured Chat System (as a microservice) - Restore deleted articles
- Custom emoji - Undo edits
- Private messaging - Fully Featured Chat System (as a microservice)
- Broadcasting to all channels - Custom emoji
- Badges next to usernames - Private messaging
- Better compression for client files - Broadcasting to all channels
- Backend for leaderboards (modding tutorial?) - Badges next to usernames
- Backend for energy systems (modding tutorial?) - Better compression for client files
- Backend for items, shops, trading and currency - Backend for leaderboards (modding tutorial?)
- Backend for energy systems (modding tutorial?)
- Backend for items, shops, trading and currency