GitWiz
Built with Node.js, TypeScript and JavaScript.
A handy portal to query public repos on multiple version control platforms.
Prerequisites • Installation • Configuration • Run & Build • Deployment • Contribution • Refs • Authors • License
Prerequisites
- Git is need to clone the repository on your machine.
- npm is needed to install packages.
- Node.js is needed to run GitWiz.
Ubuntu
Install git, Node.js and npm on your machine running Ubuntu:
$ sudo apt-get install git-core
$ sudo apt install nodejs
$ sudo apt install npm
Windows
Use the official links for downloading on Windows:
Run the following commands to confirm if the installation was successful:
$ git --version
$ node --version
$ npm --version
Installation
Clone the repo and cd into the directory:
$ git clone https://github.com/araekiel/gitwiz.git
$ cd gitwiz
Then install the node-modules in package.json:
$ npm install
Configuration
Make a .env file and set the following environment variables:
- PORT - For the port the server is going to run on
- MORGAN_METHOD - For the method that morgan is going to log requests
- GITHUB_TOKEN - Auth Token to make requests to GitHub GraphQL API
- GITLAB_TOKEN - Auth Token to make requests to GitLab GraphQL API
Run & Build
Run the app with the following command:
$ npm start
Run the app with nodemon with the following command:
$ npm run dev
nodemon will use the config specified in nodemon.json
Open a browser and type localhost:port
Build the app(Compile TypeScript to JavaScript) with the following command:
$ npm run build
Bundle the frontend:
$ npm run buildFront
Deployment
GitWiz is currently deployed on Heroku.
Click here to visit.
Heroku is discontinuing its free tier on November 28, 2022, following which this deployment will not be available.
Contribution
Fork the repository and open a pull request to contribute. Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Refs
Libraries:
APIs:
Authors
- araekiel - Github
License
MIT License | Copyright (c) 2022 Kumar Shashwat