Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kaka-ruto/nipishe
A Rails + GraphQL starter kit template with authentication, authorization and basic user account management features
https://github.com/kaka-ruto/nipishe
action-policy graphql rails ruby
Last synced: 3 months ago
JSON representation
A Rails + GraphQL starter kit template with authentication, authorization and basic user account management features
- Host: GitHub
- URL: https://github.com/kaka-ruto/nipishe
- Owner: kaka-ruto
- License: mit
- Created: 2018-08-25T01:22:39.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-14T07:24:15.000Z (almost 2 years ago)
- Last Synced: 2024-06-03T21:01:20.916Z (5 months ago)
- Topics: action-policy, graphql, rails, ruby
- Language: Ruby
- Homepage:
- Size: 203 KB
- Stars: 9
- Watchers: 1
- Forks: 4
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Nipishe
A Rails + GraphQL starter kit template with authentication, authorization and basic user account management features
## Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
## Prerequisites
What things you need to install the software and how to install them; https://gorails.com/setup
is a good one```
Ruby -v 2.5.0,
Rails -v 5.2.1
```# Installation Instructions
A step by step series of examples that tell you how to get your development environment up and running
## Without Docker / The Normal Rails Way (Preferred for development)
Install Postgresql
```
brew install postgresql
```Clone the project to your own directory, eg `project_z`
```
git clone https://github.com/borenho/nipishe.git project_z
```Use `sed` to find and replace all appearances of `Nipishe` to `Project_Z`, for example.
If you're on `zsh`, the following command will work
```
sed -i 's/NipisheSchema/ProjectZSchema/g' **/*.rb(D.)
sed -i 's/Nipishe/ProjectZ/g' **/*.rb(D.)
```You can read more about search and replacing with sed here - https://unix.stackexchange.com/questions/112023/how-can-i-replace-a-string-in-a-files
If you're using Vim, I found this helpful https://vi.stackexchange.com/questions/2776/vim-search-replace-all-files-in-current-project-folder
Please crosscheck manually if there are still appearances of Nipishe or NipisheSchem and rename appropriately.
You'll also find that there are, for example database names, that start with `nipishe_development`. Find and replace those manually too, they are few.
If you check origins, you'll find that they point to `https://github.com/kaka-ruto/nipishe.git` or `[email protected]:kaka-ruto/nipishe.git`, plase change them to your own with the following
```
git remote set-url [email protected]:YOUR-USERNAME/YOUR-REPO.git
```Confirm it's been correctly set with `git remote -v`
Open your `/etc/hosts` file
```
sudo vim /etc/hosts
```Map your machine's Postgres db host `localhost` to docker's db host `postgres`, which we
have defined in `docker-compose.yml` and referenced in `config/database.yml````
# /etc/hosts
127.0.0.1 postgres
```Change directory (cd) into `nipishe` and set up your development environment:
```
bin/setup
```Start the Rails server
```
bin/rails server
```Open the application at http://localhost:3000
## With Docker
Docker will allow us to containerize our app into a light-weight, stand-alone
and executable package of a piece of software that includes everything needed to run
it, be it the OS, libraries, gems and any other dependency.### Installing Docker
For Mac users, download Docker for mac on https://github.com/docker/for-macFor Windows users, get docker on https://github.com/docker/for-win
If you are on Ubuntu, the following steps are recommended:
Update your local database of software to get the latest revisions
```
sudo apt-get update
```Get/download Docker
```
sudo apt install docker.io
```Start and automate Docker
```
sudo systemctl start docker
```
```
sudo systemctl enable docker
```### Installing Docker Compose
```
brew install docker-compose
```### Provisioning the app
Clone the project:```
git clone https://github.com/borenho/nipishe.git
```Change directory (cd) into `nipishe`.
Set up your docker environment, by building the docker image
```
docker-compose build
```Setup the database(create, migrate, seed)
```
docker-compose run runner ./bin/setup
```Now run the sweet Rails app
```
docker-compose up rails
```Open the application at http://localhost:3000
To use the GraphiQL web interface make sure you have a file at `app/assets/config/manifest.js` with the following content:
```
//= link graphiql/rails/application.css
//= link graphiql/rails/application.js```
You're all set! Now you're ready to code!
# GraphQL
Todo: Show how to run mutations and queries on the API
## Tests
Run the tests
```
bin/rspec
```# Deployment
Todo: Add notes about how to deploy this on a live system
### Built With
* [Ruby on Rails](https://rubyonrails.org/) - The loved web framework
* [GraphQL](https://graphql.org/) - A query language and runtime for APIs### License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details