Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shashwatah/gitwiz
A handy portal to query public repos on multiple version control platforms.
https://github.com/shashwatah/gitwiz
api express git github gitlab gitwiz graphql handlebars javascript nodejs portal repositories repository scrape search search-engine ts-node types typescript version-control
Last synced: 24 days ago
JSON representation
A handy portal to query public repos on multiple version control platforms.
- Host: GitHub
- URL: https://github.com/shashwatah/gitwiz
- Owner: shashwatah
- License: mit
- Created: 2020-05-03T08:22:10.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-01-16T18:30:07.000Z (10 months ago)
- Last Synced: 2024-01-18T03:30:24.144Z (10 months ago)
- Topics: api, express, git, github, gitlab, gitwiz, graphql, handlebars, javascript, nodejs, portal, repositories, repository, scrape, search, search-engine, ts-node, types, typescript, version-control
- Language: TypeScript
- Homepage: https://gitwiz.onrender.com/
- Size: 866 KB
- Stars: 23
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
GitWiz
A handy portal to query public repos on multiple version control platforms.
Built with Node.js, TypeScript and JavaScript.
Prerequisites •
Installation •
Configuration •
Run & Build •
Deployment •
Refs •
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:
```bash
$ sudo apt-get install git-core
$ sudo apt install nodejs
$ sudo apt install npm
```
### WindowsUse the official links for downloading on Windows:
- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/en/download/)
- [npm](https://www.npmjs.com/get-npm)Run the following commands to confirm if the installation was successful:
```bash
$ git --version
$ node --version
$ npm --version
```## Installation
Clone the repo and cd into the directory:
```bash
$ git clone https://github.com/shashwatah/gitwiz.git
$ cd gitwiz
```Then install the node-modules in package.json:
```bash
$ 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:
```bash
$ npm start
```Run the app with nodemon with the following command:
```bash
$ 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:
```bash
$ npm run build
```Bundle the frontend:
```bash
$ npm run buildFront
```## Deployment
GitWiz is currently deployed on Render.
Click [here](https://gitwiz.onrender.com/) to visit.## Refs
#### Libraries:
- [node-cache/node-cache](https://github.com/node-cache/node-cache)
- [ozh/github-colors](https://github.com/ozh/github-colors)#### APIs:
- [Github GraphQL API](https://developer.github.com/v4/)
- [Gitlab GraphQL API](https://docs.gitlab.com/ee/api/graphql/)## License
[MIT License](https://github.com/shashwatah/gitwiz/blob/master/LICENSE) | Copyright (c) 2024 Kumar Shashwat