Coder Social home page Coder Social logo

mattaudesse / moot Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lorepub/moot

0.0 2.0 0.0 369 KB

Moot is a CFP and event management system!

License: GNU Affero General Public License v3.0

Makefile 1.38% Haskell 76.87% JavaScript 0.53% HTML 4.35% CSS 16.81% Shell 0.07%

moot's Introduction

Moot

This is the home of Moot, a CFP and event management system. To learn more, please see the slides for the launch announcement.

Helping out

If you're interested in learning Haskell or would like to help, please contact me! We're still looking for:

  • Backend and frontend developers
  • Designers
  • UI/UX pros
  • People willing to help with tutoring and teaching

I'll (Chris) be doing the heavy lifting but I'd like this application to be an opportunity for people to kick around a real Haskell application. To that end, I'm offering tutoring to folks interested in helping out. Don't be afraid to help out in one capacity (e.g. UI/UX) while asking for tutoring in another.

The easiest way to contact me is to send a message to the email address on my GitHub profile.

Current milestone

The current milestone is for CFP functionality. Some of the CFP milestone is general functionality needed for CFP features to be complete.

Database Setup

Ubuntu 16.04 / 18.04

After installing Postgres, run:

sudo -u postgres createuser moot --superuser
sudo -u postgres createdb moot_dev
sudo -u postgres createdb moot_test
echo "ALTER USER moot WITH PASSWORD 'moot'" | sudo -u postgres psql

macOS

If using Postgres.app: https://postgresapp.com/documentation/cli-tools.html Homebrew: https://www.codementor.io/engineerapart/getting-started-with-postgresql-on-mac-osx-are8jcopb

Either way, these commands should be in your path and you shouldn't need to sudo as a separate user specially made for Postgres in the typical macOS PostgreSQL server install:

createuser moot --superuser
createdb moot_dev
createdb moot_test
echo "ALTER USER moot WITH PASSWORD 'moot'" | psql

Windows

???

Haskell Setup

  1. If you haven't already, install Stack
    • On POSIX systems, this is usually curl -sSL https://get.haskellstack.org/ | sh
  2. Install the yesod command line tool: stack install yesod-bin --install-ghc
  3. Build libraries: stack build

If you have trouble, refer to the Yesod Quickstart guide for additional detail.

Development

Installing dependencies

This should install the yesod binary for the development server and also install the dependencies for the gulp build:

make deps

Starting the web server for work

Start the gulp watch with:

make frontend-watch

Start a development server with:

make backend-watch

As your code changes, your site will be automatically recompiled and redeployed to localhost.

Tests

stack test --flag moot:library-only --flag moot:dev

(Because yesod devel passes the library-only and dev flags, matching those flags means you don't need to recompile between tests and development, and it disables optimization to speed up your test compile times).

Documentation

  • Read the Yesod Book online for free
  • Check Stackage for documentation on the packages in your LTS Haskell version, or search it using Hoogle. Tip: Your LTS version is in your stack.yaml file.
  • For local documentation, use:
    • stack haddock --open to generate Haddock documentation for your dependencies, and open that documentation in a browser
    • stack hoogle <function, module or type signature> to generate a Hoogle database and search for your query
  • The Yesod cookbook has sample code for various needs

Getting Help

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.