obelisk
direnv
Our great sponsors
obelisk | direnv | |
---|---|---|
26 | 157 | |
914 | 11,590 | |
1.0% | 2.1% | |
7.4 | 8.8 | |
7 days ago | about 21 hours ago | |
Haskell | Go | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
obelisk
-
Why are haskell applications so obscure?
Regarding smartphone applications, I've recently been working on a simple application with Obelisk (https://github.com/obsidiansystems/obelisk), which uses GHCJS and is pretty usable once you've gotten into Reflex a bit, though it produces somewhat opaque type errors sometimes. I do not know though whether Obelisk can do anything beyond webview apps. If so, I do not know how yet.
You can make all those things in haskell, and I do professionally. Frontends (entirely in haskell), native IOS and Android applications, Servers, and Games. In fact the framework Obelisk does most of these all out of the box.
-
Any advice on making a mobile app using Haskell?
From researching seems like Obelisk might be the right tool for this, but wanted to know if others had built mobile apps in Haskell and their experience/advice if this is a good root to take?
-
Building a Haskell CRUD stack with Obelisk for PowerZonePack
Thanks for the comment! We can honestly say that Obelisk is far from perfect, but we're continuously improving the project in our daily basics. And that's why we encourage you to start your adventure with the lib anew. If you still miss a guide to routing with Obelisk, please read this doc. Our team would be happy to answer your further question regarding Obelisk; feel free to email us anytime!
Thank you for your feedback; by writing this post, we wanted to familiarize the audience with using Haskell language as a universal, full-stack language. If you are interested in diving into more technical details, a good starting point would be to take a look at the Obelisk's codebase.
-
GitHub - NorfairKing/haskell-dependency-graph-nix
I also had a use case where I needed to extract the nix derivation dependencies of haskell packages: https://github.com/obsidiansystems/obelisk/pull/933
-
Web development in Haskell
There's also GHCJS, with https://github.com/obsidiansystems/obelisk being (probably) the best choice, but personally I found it extremely tedious to set up a dev environment (not a nix guy) and there's also the learning curve of FRP.
-
The Big List of Haskell GUI Libraries
https://github.com/obsidiansystems/obelisk, https://shpadoinkle.org/
-
Monthly Hask Anything (July 2022)
I can't speak to the nicest way, as I haven't actually developed any Android apps with Haskell, but I've been meaning to give Obelisk a try.
direnv
-
Nix-direnv is a quality of life improvement
I also made the export diff configurable, motivated by this post: https://github.com/direnv/direnv/pull/1233
-
Conditional Git Configuration
Nice.
For years I've been using [direnv](https://direnv.net/) for this, setting environment variables which git picks up. This looks like a more feature complete equivalent, although to be honest I only really need switching of committer email and the SSH key used.
- FLaNK 25 December 2023
-
Development Environments with Guix, similar to devenv.sh
Direnv, for the uninitiated, loads and unloads environment variables when directories are entered and exited. Under every project folder there is a `$PROJ_DIR/.envrc` which contains:
-
Emacs Advent Calendar 9: devdocs, code-cells, dREPL, etc.
buffer-env: A pure-Elisp version of the direnv utility. Useful to make Emacs aware of Python virtualenvs (which, judging by the questions posted here, is unfortunately still a complication for a lot of people). Similar to (and inspired by) envrc, but doesn't require the direnv program.
-
golang cli vs env var in windows?
You can look at direnv to see this in action as they wrote shell hooks that get loaded into the shell profile and are executed on every prompt. https://direnv.net/
-
Nix Survival Mode: macOS upgrades won't break Nix anymore
Yes, most Nix users employ https://direnv.net or the equivalent for your IDE of choice. Emacs for instance has https://github.com/purcell/envrc which set per-buffer variables.
-
What Is Wrong with TOML?
The more applications I write, the more I tend to avoid typical config files in favor of using direnv [0] to set environment variables.
What are some alternatives?
spaceship-prompt - :rocket::star: Minimalistic, powerful and extremely customizable Zsh prompt
reflex-platform - A curated package set and set of tools that let you build Haskell packages so they can run on a variety of platforms. reflex-platform is built on top of the nix package manager.
Pipenv - Python Development Workflow for Humans.
lorri - Your project's nix-env
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable
Poetry - Python packaging and dependency management made easy
autojump - A cd command that learns - easily navigate directories from the command line
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
pyenv - Simple Python version management
exrc.vim - Local vimrc files
funky - Funky takes shell functions to the next level by making them easier to define, more flexible, and more interactive.