Coder Social home page Coder Social logo

jacobarrow / ticket Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sl2022/ticket

0.0 0.0 0.0 370 KB

A ticket handling system implemented using Elixir/Phoenix Liveview

License: GNU General Public License v3.0

Elixir 66.58% SCSS 2.82% CSS 17.48% JavaScript 5.52% HTML 6.07% Shell 1.53%

ticket's Introduction

Ticket

A ticket handling system implemented using Elixir/Phoenix Liveview

Getting things going at your own place

To start your local version of Ticket:

  • Install Docker for your platform
  • Fork this repo
  • Clone it (from your profile) onto your local machine
  • Change into the ticket folder cd ticket
  • Install Node.js dependencies in the assets folder, with npm --prefix=assets install
  • Make a folder for that PostgreSQL data, with mkdir -p priv/pgdata
  • Start a PostgreSQL container docker-compose -d up
  • Install dependencies with mix deps.get
  • Create and migrate your database with mix ecto.setup
  • Start Phoenix endpoint with mix phx.server or if you prefer the prompt iex -S mix phx.server

Now you can visit localhost:4000 from your browser.

Need to make sure tests are good? Run mix test and all acceptance/system tests with mix cypress.open

Looking for documentation? Fret not - mix docs - and then open doc/index.html

Ready to go to war?

Do you feel Ticket has what it takes to provide for your situation?

--wip--

Contributing

We'd really like you to chip in!

This is what we believe to be the best workflow for you to follow:

  1. Get things going at your own place (follow the list above)
  2. Find an issue to work on - or suggest an issue yourself, and appoint it to yourself
  3. Set a remote to point to SL2022/ticket (it's a onetime job) with git remote add ticket https://github.com/SL2022/ticket.git
  4. Start with pulling the latest main, with git fetch ticket
  5. Checkout you own main with git checkout main
  6. Merge the current latest with git merge ticket/main
  7. Resolve any conflicts - if any - and commit with something like "solved issues with xxx'
  8. Checkout a new branch for this issue with git checkout -b what_the_issue_is_about_in_a_word_or_two
  9. Do your magic with code ., emacs, vi, or whatever
  10. Add documentation to modules, indoc test examples, and more
  11. Add tests to cover what you do
  12. Make sure to break no tests with mix test staying green
  13. Add your changes with git add some_file*
  14. Commit the changes with git commit -m 'what the issue is about in a few (10) words'
  15. Checkout your main with git checkout main
  16. Merge your changes into your own "copy" with git merge what_the_issue_is_about_in_a_word_or_two
  17. Make sure all tests are staying green with mix test
  18. Push your main to your repo
  19. Go to your repo (on github.com) and press the "Pull request"
  20. Motivate the PR - and create it.

Thank you very much from all of the Almanaq Team

Learn more

Ticket was built with the PETAL stack (Postgres, Elixir/Phoenix, Tailwind, AlpineJS, Liveview), and acceptance tests done with Cypress - here are som links for your browsing convenience:

PETAL stack, C.f. @ThinkingElixir

ticket's People

Contributors

jacobarrow avatar wdiechmann avatar

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.