GithubHelp home page GithubHelp logo

bigbinary / wheel Goto Github PK

View Code? Open in Web Editor NEW
250.0 38.0 192.0 3.63 MB

Don't reinvent the wheel for every new Rails project. Use sane Defaults.

Home Page: https://wheel-production.neetodeployapp.com

License: MIT License

Ruby 48.46% JavaScript 40.24% HTML 7.55% SCSS 0.35% Slim 0.38% Shell 2.93% Procfile 0.08%
rails ruby boilerplate

wheel's Introduction

Made by the team at BigBinary, this is a base project to quickly spin up a Rails application built with opinions of BigBinary style of working.

Local Development Setup

First clone this repo.

Then install the Node.js version v18.12 which we have specified inside the .node-version file of this repo., using the following command:

nvm install

Make sure that yarn is installed with it as well in your system.

After yarn is installed, install the Node.js and Rails dependencies and also seed the database, by running:

./bin/setup

Start the server by executing following command.

bundle exec rails server -p 3000

Visit http://localhost:3000 and login with email [email protected] and password welcome.

Using docker for development

In BigBinary we follow the above mentioned style of installing dependencies using ./bin/setup and then running the servers manually. If that doesn't work in your system for some reason, then you can opt into following the instructions mentioned here to use docker for development.

Replace Wheel with your project name

Let's say that the project name is Pump. Execute the command below to replace all occurrences of Wheel with Pump.

perl -pi -w -e 's/Wheel/Pump/g;' $(git ls-files)

Features

neetoDeploy Review

neetoDeploy Review is enabled on this application. Thus all PRs will have a review app and once the PR is merged to main, it will be deployed to production instance. The neetoDeploy instance for Wheel is hosted in neeto-engineering organization.

About BigBinary

BigBinary

wheel is maintained by BigBinary. BigBinary is a software consultancy company. We build web and mobile applications using Ruby on Rails, React.js, React Native and Node.js.

wheel's People

Contributors

akhil-gautam avatar apoorvo avatar ashiksp avatar chiraggshah avatar datt avatar dependabot-preview[bot] avatar dependabot[bot] avatar edwinbbu avatar ghousemohamed avatar goutham-subramanyam avatar hari816 avatar jagannathbhat avatar navaneethsdk avatar neerajsingh0101 avatar nitinprojects avatar prasannams97 avatar prathamesh-sonpatki avatar rahulmahale avatar rishabhanand12 avatar rishimohan avatar rkr090 avatar rohann7 avatar sandip-mane avatar sharang-d avatar srijan-kapoor avatar udai1931 avatar unnitallman avatar vinay0x avatar vipulnsward avatar yedhink avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wheel's Issues

Update CSS structure

Just as we did in AceInvoice and BB website, we need to update CSS structure in wheel so new projects can follow the same organization.

Update Ruby from 2.4.1 to 2.5.1 In Dockerfile

docker-compose up
throws this error
Step 6/6 : RUN bundle install ---> Running in 7f95f4e103d7 Warning: the running version of Bundler (1.15.4) is older than the version that created the lockfile (1.16.1). We suggest you upgrade to the latest version of Bundler by running gem install bundler. Your Ruby version is 2.4.1, but your Gemfile specified 2.5.1 ERROR: Service 'web' failed to build: The command '/bin/sh -c bundle install' returned a non-zero code: 18

Environment configuration updates

Environment configuration updates.

  • Update tagged logging
  • Remove rails_12factor gem (heroku logging)
  • Update sample database config
  • Add sidekiq config

Push to heroku should just work

As of now every push to heroku fails with ArgumentError: Missing required arguments: aws_access_key_id, aws_secret_access_key even when I'm not using aws.

Going to put some default value that could be changed later.

error for require in test_helper

I am facing the following error with the test_helper

LoadError: cannot load such file -- minitest/reporters

This happens for mocha/setup as well after I try commenting just the one require minitest/reporters line.

LoadError: cannot load such file -- mocha/setup

I have to comment all of them like this to make the tests run.

Remove node_modules after assets:precompile

Heroku has a max slug size limit of 500MB. In order to help reduce the slug size, it would be good to remove node_modules folder after assets:precompile, before the slug is created.

argument list too long: perl

perl -e "s/Wheel/Pump/g;" -pi $(find . -type f) might thrown up an error

argument list too long: perl because the number of characters passed as an argument will be way more than ARG_MAX.

Might be a good to idea to only pass in the files which are added in git instead of all the files.

Also, this does not replace lower case characters in wheel.

Managing persistent data in docker

Because we execute bundle exec rake setup in the web container entrypoint, each time I execute docker-compose up, all the data is deleted and recreated.

We should check whether the database is already present and just run the migrations or did I miss something @vipulnsward @RahulMahale

Specifying gem version in Gemfile with twiddle-waka

I started one of demo project from wheel. As I have simple_form 1.4.1 and 3.1.0 both present on machine, running bundle choose to go with 1.4.1 version of simple_form.

App fails to boot because it depends on 3.1.0 APIs of gem.

So, can we have versions specified for all the gems that we have in Gemfile and also make sure we have this as style guideline. I wrote something about it long back here - http://rtdptech.com/2011/09/specifying-gem-versions-in-gemfile-for-rails-application/

Enable Dependabot to perform security (gem) updates

Why?
Let machines do what they can.

Context:
A nokogiri CVE was recently discovered/reported which is why the CI build on master failed.
On a client project, we had Dependabot enabled and it automatically created a PR to upgrade the gem. I only had to merge it after the tests passed.

Settings doesn't reload

We do a custom loading of settings from handy. Since we have added spring, the background process doesn't seem to reload settings leading to old settings still getting served during development.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.