Skip to content

Single Page Application written in Elm with Elixir/Phoenix Backend

License

Notifications You must be signed in to change notification settings

korczis/the-scratch

Repository files navigation

About

Single Page Application written in Elm with Elixir/Phoenix Backend

Status

License Build Status Coverage Status

Features

Core

  • Accounting/Monitoring
    • Metrics
      • Queries count
      • Query response time Avg
    • Global
    • Per User
    • GraphQL Calls
    • REST API Calls
    • UI
      • Users
      • Admins
    • Scalable
    • Zero-cost (abstraction)
  • Admin Interface
    • First created User
  • Authentication
    • Email
    • JWT
    • OAuth
      • Github
      • Google
      • Facebook
      • LinkedIn
      • Twitter
    • Sign In
    • Sign Up
    • Zero-cost (abstraction)
  • Authorization
    • Permissions
    • Roles
    • ACL / RBAC
    • UI
    • Zero-cost (abstraction)
  • Bootstrap Integration
    • Carousel
    • Navigation Bar
  • Client Side Logging
  • Configuration
    • Configuration Discovery
    • Service Discovery
    • Zero-cost (abstraction)
  • CSRF protection
  • Documentation
    • Generated - Developers
  • Google Analytics
  • Google Maps
  • GraphQL & Friends
    • GraphQL
    • GraphiQL
    • Relay
  • Hot Reloading
  • Internationalization
  • Loading Indicator/Spinner
  • Localization
    • Server-side
    • Client-side
    • Extracted/Generated
    • Shared (Client & Server)
    • Zero-cost (abstraction)
  • Multipart Upload
  • Persistence (using Abstraction/Ecto)
    • Migrations
    • In-memory
    • No-SQL
      • Couchbase
    • SQL
      • SQLite
      • PostgreSQL
    • Zero-cost (abstraction)
  • Presentation
    • Generated HTML5
  • Router
  • Rust Integration
  • Tests
    • Server-side
      • Coverage
    • Client-side
      • Coverage
  • User Management
    • Create User
    • Read/Get User
    • Update User
    • Delete User
  • Webpack Integration
    • Development
    • Production
  • WebSocket
    • Phoenix Websocket Integration
      • Authentication
    • Push Notifications
      • Persistent Changes

Deployment

  • Dockerfile
  • Kubernetes
  • Systemd unit

Fancy

  • Stats.js - JavaScript Performance Monitor

Prerequisites

Getting started

To start your Phoenix app:

  • Edit config/config.ex
  • Install nodejs dependencies with npm install
  • Install bower dependencies with bower install
  • Install elm dependencies with elm package install
  • Install dependencies with mix deps.get
  • Start Phoenix endpoint with mix phoenix.server

Now you can visit localhost:4000 from your browser.

Ready to run in production? Please check our deployment guides.

How to

Add new page

  • Create new sub-folder for component in web/elm/Component folder

Learn more

Elm

Elixir

Phoenix

About

Single Page Application written in Elm with Elixir/Phoenix Backend

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published