A Platform which helps to mobilise young generation into politics. Generate public database of issues around the Pakistan and log research based solutions.
- Operating System: MacOS or Linux
- Node.js (I recommend installing with NVM)
- Homebrew (to install MongoDB)
npm install
# Install MongoDB
brew tap mongodb/brew
brew install mongodb-community
Start the database
brew services start mongodb-community
Start the client
npm run start:client
Start the server
npm run start:server
npm run build
npm start:server
npm start
npm test
npm run lint
npm run lint:fix
npm run test:verbose
npm run test:coverage
npm run test:watch-client
npm run test:watch-server
- Webpack conveniently bundles your code for you.
- Babel lets you use ES6/7 features.
- CSS pre-processor setup for LESS and SASS lets you keep your styles clean and organized.
- ESLint helps you maintain a high level of code quality.
- Jest gives you a robust testing framework to make sure your code works.
- client
- api
- assets
- images
- icons
- components
- atoms
- molecules
- organisms
- pages
- environment
- hooks
- store
- actions
- reducers
- thunks
- tests
- styles
- utils
- server
- config
- database
- routes
- scripts
Component Heirarchy:
Environment > Pages > Organisms > Molecules > Atoms
This is based on atomic design. Learn more about atomic design.
React - View Library
Redux - State Manager
Webpack - Module Bundler
Express - Node Application Framework
MongoDB - Document Database
Mongoose - MongoDB Framework
Passport - Authentication Framework
React Notifications Component - Notification System
Bulma - CSS Framework
React Bulma Companion - Bulma Component Library
FontAwesome - Icons
Ramda - Functional Library
date-fns - Date Functions Library
SuperAgent - HTTP Request Library
ESLint - Code Linter
Jest - Testing Framework