Giter Club home page Giter Club logo

genie.jl's Introduction

Genie Logo

Stable Latest

Genie

The highly productive Julia web framework

Genie is a full-stack MVC web framework that provides a streamlined and efficient workflow for developing modern web applications. It builds on Julia's strengths (high-level, high-performance, dynamic, JIT compiled), exposing a rich API and a powerful toolset for productive web development.

Current status

Genie is undergoing massive refactoring to fully support Julia v0.7/1.0 and move onto the HTTP stack. Expect that things will break oftenly before being stable.

Quick start

In a Julia session clone Genie and its dependencies:

julia> Pkg.clone("https://github.com/essenciary/Genie.jl")

Bring it into scope:

julia> using Genie

Create a new app:

julia> Genie.REPL.new_app("your_cool_new_app")

info: Done! New app created at /path/to/your_cool_new_app

Genie will automatically load the new app into the REPL and start an interactive genie> session.

Edit /path/to/your_cool_new_app/config/routes.jl and append:

route("/hello") do
  "Hello - Welcome to Genie!"
end

Start the web server:

genie> AppServer.startup()
Listening on 0.0.0.0:8000...

Visit http://localhost:8000/hello for a warm welcome!


At any time, from the command line you can start a Genie interactive session by using

MacOS / Linux / *nix
$> bin/repl

Or you can use

$> bin/server

to start the app in non-interactive mode.

Windows

On Windows, repl.bat and server.bat are provided inside the bin/ folder. Just double click them to start an interactive REPL session or a server session, respectively.

Juno / Jupyter / other Julia environment
using Genie

Genie.REPL.run_repl_app()

Next steps

If you want to learn more about Genie you can

Acknowledgements

  • Genie uses a multitude of packages that have been contributed by so many incredible developers.
  • The amazing Genie logo was designed by my friend Alvaro Casanova (www.yeahstyledg.com).
  • Built with the help and support of many amazing developers at the julia-users group.

Thank you all!

genie.jl's People

Contributors

essenciary avatar mbeltagy avatar pallharaldsson avatar tcopestake avatar

Watchers

 avatar  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.