Giter Club home page Giter Club logo

personas's People

Contributors

bpolly avatar wesdelp avatar

Watchers

 avatar

personas's Issues

Add validations around persona name generator

Since we allow users to create their own personas, we'll want to make sure to sanitize the names they provide. Consider checking for special characters, spaces, punctuation marks, non-unicode characters, etc.

Potential workflow is to simply reject these names with a message to the user warning them why the name is invalid.

Add FAQ section to README

I've ran into it myself where the gem didn't seem to be working and it was because I forgot to run the install generator and the personas initializer wasn't in my app. Let's add a helpful FAQ section for the questions we see most often.

Potential questions:

  • Something

Add documentation for the generators

We should have descriptions for the multiple generators in both the files themselves and more importantly the README.

Descriptions should include:

  • what the generator is used for
  • what files get generated
  • configurable options users can pass in

Re-add Rubocop config file

The .rubocop.yml file got lost in the migration from CMM's GitHub to public GitHub. Gonna need that or we'll be forever at the whim of default Rubocop configs (shudder)

Persona generator should inject route helper in routes file

Running

rails g personas:create Admin

should inject the route helper into config/routes.rb like so

include Personas::PersonaRouter

Rails.application.routes.draw do
  for_persona :admin do
    root to: 'dashboard#index'
    resources :persona_switches, only: :create
  end
end

Add quick setup instructions to README

Users will need a quick start guide in the README with instructions on how to actually use the gem once they have installed it.

At a minimum it should have the following:

  • Running the rails g personas:install generator
  • Running the rails g personas:create generator
  • What files these steps have created
  • Where to go next

Create example application

Since there will still be a bit of custom setup on the user's end, we should create an example application that people can refer to see the optimal way of setting the gem up.

We should include a link somewhere in the README so people know where to find it as well.

Consider adding code coverage tool

We should consider adding SimpleCov or some other code coverage tool to be sure we don't have any large gaps in our spec coverage moving forward.

View helper for persona switcher

The persona switcher is a useful part of the gem, we should consider creating a view helper for users to drop into their application to easily pull in a select form. Options we should consider adding are styles, available options, include_blank. We can add more as we come up with ideas.

Setup CI and accompanying scripts

We'll want a CI instance in order to keep us from breaking something. Be sure to create a script or something that it runs to be sure we can version track our job script.

More spec coverage

#1 added RSpec to our project, we should go ahead and continuing building out our spec coverage.

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.