All Projects → botblock → BotBlock.org

botblock / BotBlock.org

Licence: MPL-2.0 license
BotBlock - The List of Discord Bot Lists and Services

Programming Languages

javascript
184084 projects - #8 most used programming language
Pug
443 projects
SCSS
7915 projects

Projects that are alternatives of or similar to BotBlock.org

Practicalnode
Practical Node.js, 1st and 2nd Editions [Apress] 📓
Stars: ✭ 3,694 (+12637.93%)
Mutual labels:  mocha, expressjs, node-js, express-js
express-mysql-rest
Building the simple api with sequelize, mysql and express js. this repository contains the code about how to use sequelize with mysql at express js. for example i have provide the crud operation to this repository. You can also testing the api with chai and mocha with chai-http by this repository
Stars: ✭ 25 (-13.79%)
Mutual labels:  mocha, expressjs, chai, chai-http
TvrboReact
Dream starter project: React, Redux, React Router, Webpack
Stars: ✭ 13 (-55.17%)
Mutual labels:  mocha, expressjs, chai
Bootstrap3 Pug Former jade Node Express Grunt
Bootstrap 3 templated by Jade
Stars: ✭ 242 (+734.48%)
Mutual labels:  pug, node-js, express-js
express-file-upload
Node.js Express Upload/Download File Rest APIs example with Multer
Stars: ✭ 64 (+120.69%)
Mutual labels:  expressjs, node-js, express-js
Blueprint
solid framework for building APIs and backend services
Stars: ✭ 87 (+200%)
Mutual labels:  expressjs, node-js, express-js
kontent-boilerplate-express-apollo
Kontent Boilerplate for development of Express application using Apollo server and GraphQL.
Stars: ✭ 21 (-27.59%)
Mutual labels:  pug, express-js, pug-template-engine
tic-tac-toe-game-using-bit
Simple Tic Tac Toe game built with react-typescript components
Stars: ✭ 19 (-34.48%)
Mutual labels:  mocha, mocha-tests, mocha-chai
roboserver
Control OpenComputers robots without writing any code!
Stars: ✭ 52 (+79.31%)
Mutual labels:  expressjs, node-js, express-js
Tvrboreact
Dream starter project: React, Redux, React Router, Webpack
Stars: ✭ 13 (-55.17%)
Mutual labels:  mocha, expressjs, chai
Bombanauts
Bombanauts, inspired by the original Bomberman game, is a 3D multiplayer online battle arena (MOBA) game where players can throw bombs at each other, make boxes explode, and even other players!
Stars: ✭ 54 (+86.21%)
Mutual labels:  mocha, expressjs, chai
Node Express Postgresql Server
Basic Node with Express + PostgreSQL Server
Stars: ✭ 74 (+155.17%)
Mutual labels:  expressjs, node-js, express-js
Node Production
Take Your Node.js Project to The Production Environment (VPS/Dedicated Server).
Stars: ✭ 35 (+20.69%)
Mutual labels:  expressjs, node-js, express-js
Node.js Bootstrap Starter Template
Node.js, Express, Pug, Twitter Bootstrap, Starter Template
Stars: ✭ 107 (+268.97%)
Mutual labels:  pug, expressjs, node-js
Serverless Express
Run Node.js web applications and APIs using existing application frameworks on AWS #serverless technologies such as Lambda, API Gateway, Lambda@Edge, and ALB.
Stars: ✭ 4,265 (+14606.9%)
Mutual labels:  expressjs, node-js, express-js
typescript-api-starter
🔰 Starter for Node.js express API in Typescript 🚀
Stars: ✭ 72 (+148.28%)
Mutual labels:  knex, chai, knexjs
express-mvc-generator
Express' Model View Controller Application Generator.
Stars: ✭ 46 (+58.62%)
Mutual labels:  expressjs, node-js, express-js
node-express-mongo-passport-jwt-typescript
A Node.js back end web application with REST API, user JWT authentication and MongoDB data storage using TypeScript
Stars: ✭ 51 (+75.86%)
Mutual labels:  expressjs, node-js, express-js
Nodebestpractices
✅ The Node.js best practices list (December 2021)
Stars: ✭ 72,734 (+250706.9%)
Mutual labels:  mocha, expressjs, node-js
Typescript Restful Starter
Node.js + ExpressJS + Joi + Typeorm + Typescript + JWT + ES2015 + Clustering + Tslint + Mocha + Chai
Stars: ✭ 97 (+234.48%)
Mutual labels:  mocha, expressjs, chai

BotBlock.org

Getting Started

Config File

Copy the example config file to config.js at the root of the project. For development, you may want to set the port to 3000 instead of 80. Please make sure to fill out all the required config data for the Discord integration.

Dependencies

We use Node.js 10+ for the project, so all our dependencies are managed from the package.json file and can be installed with NPM by running npm install.

We have decided that the dependency lock file (package-lock.json) won't be version controlled for this project. If we ever encounter and issue with dependency versioning across environments, we might change this.

Setup Database

Create Database

The first thing to do is create your database and a blank schema with a name of your choosing. In production, we use MySQL and a schema named botblock.

Once you have this setup, please input the database config data into the config.js file.

Create Structure

To initialise the full structure in your database and ensure it is up-to-date with what the project expects, we use Knex's migrations feature.

Please run npm run db:migrate to run all pending database migrations, which includes the initial migration to setup the DB structure.

Seed Data

To get your database populated with data, you can use the seed data that we have provided in the repository. This data is periodically updated with an export of the live production data.

Warning! Running the seed script will wipe the tables before introducing the provided seed data.

To run the seed script, use npm run db:seed.

Development

Web Server

To run the web server for development, use npm run dev. This will start the application in watching mode so when a file is changed it will restart the app automatically.

SCSS

To build the styling for the site once, you can use npm run css:build.

However, if you are working on the styling, you can use the watch mode where the styles will be rebuilt whenever a SCSS file is updated. To use this, run npm run css:watch.

Testing

Tests are super important! They allow us to validate any changes that are made before we deploy to staging and production.

Please make sure you write tests for any new code you add to the project, in the tests directory, following the same file structure as in src.

To run the full test suite, ensure that the web server is running first using npm run start or npm run dev. You can then run the test suite, which uses mocha, by running npm run test.

Updating

Keeping your copy of the project up-to-date is important when working on new features. Once you have pulled down the latest changes from GitHub (using git pull), make sure to run any pending database migrations by using npm run db:migrate.

If you wish to ever reset the data in your database to a recent copy of production and wipe any data changes you've made, you can always reseed the database by using npm run db:seed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].