All Projects → JasonShin → reason-vue

JasonShin / reason-vue

Licence: MIT license
ReasonML and Vue

Programming Languages

javascript
184084 projects - #8 most used programming language
Vue
7211 projects
ocaml
1615 projects
HTML
75241 projects

Projects that are alternatives of or similar to reason-vue

ts2re
Convert TypeScript type declarations to Reason
Stars: ✭ 32 (-41.82%)
Mutual labels:  reasonml
reason-react-lazy-loading
Example project to show how to use components lazy loading in ReasonReact
Stars: ✭ 41 (-25.45%)
Mutual labels:  reasonml
sonos-wejay
Slack integration for a local Sonos system
Stars: ✭ 19 (-65.45%)
Mutual labels:  reasonml
re-cite
Manage citations from your colleagues , friends, movies, your cat or even yourself.
Stars: ✭ 20 (-63.64%)
Mutual labels:  reasonml
reason-rust-scraper
🦀 Scraping & crawling websites using Rust, and ReasonML
Stars: ✭ 21 (-61.82%)
Mutual labels:  reasonml
remachine
[WIP] Reason pattern matching viz
Stars: ✭ 44 (-20%)
Mutual labels:  reasonml
markdown-reason-react
Generate ReasonReact Pages from Markdown
Stars: ✭ 17 (-69.09%)
Mutual labels:  reasonml
JsonCodec
JSON combinator library for BuckleScript/Reason
Stars: ✭ 38 (-30.91%)
Mutual labels:  reasonml
react-rules-of-hooks-ppx
This ppx validates the rules of React hooks.
Stars: ✭ 40 (-27.27%)
Mutual labels:  reasonml
ogaml
Ocaml multimedia library
Stars: ✭ 28 (-49.09%)
Mutual labels:  reasonml
bacen-exchange-rates
Reason API to fetch the daily reports from BACEN PTAX exchanges
Stars: ✭ 16 (-70.91%)
Mutual labels:  reasonml
rekernel
A minimal setup for writing Unikernels in ReasonML
Stars: ✭ 28 (-49.09%)
Mutual labels:  reasonml
rx-reason
Reactive programming library for ReasonML/OCaml
Stars: ✭ 49 (-10.91%)
Mutual labels:  reasonml
re-hyperapp
Almost zero-cost bindings for the https://github.com/hyperapp/hyperapp UI library.
Stars: ✭ 21 (-61.82%)
Mutual labels:  reasonml
reasonml-tic-tac-toe
www.imandra.ai
Stars: ✭ 19 (-65.45%)
Mutual labels:  reasonml
refabricator
Static Site Generator for/in ReasonML
Stars: ✭ 31 (-43.64%)
Mutual labels:  reasonml
bs-dynamic-import
📦🚀 BuckleScript dynamic import interop on JavaScript environment
Stars: ✭ 31 (-43.64%)
Mutual labels:  reasonml
reform
📋 Reasonably making forms sound good
Stars: ✭ 345 (+527.27%)
Mutual labels:  reasonml
LifeTime
LifeTime app
Stars: ✭ 35 (-36.36%)
Mutual labels:  reasonml
ideas-for-project-names-starting-with-re
No description or website provided.
Stars: ✭ 27 (-50.91%)
Mutual labels:  reasonml

reason-vue

Vue.js fueled by the power of reasonml

Current stage of development

Immediate goal: MVP version

  1. vue-loader under build/loaders/re-loader.js must be registered as a custom loader via webpack using "resolveLoaders"

  2. A simple Webpack build test that runs build and make sure it does not fail while compiling

  3. vue-loader should read source passed in by vue-loader and parse it as raw JS using bsb-platform (bsb cli)

  4. Once above requirements are done, the loader should work with webpack-dev-server and standard webpack build task

  5. Merge https://github.com/aweary/reason-vue/blob/master/src/vue.re into this project and use Vue binding inside main.re to initialise Vue instance

How does re-loader works right now and what is the plan?

build

a) Clone project_root/src into __dirname/src-cloned

Why do we need this? By doing this, we do not clutter original src folder with .re and .bs.js mess

b) Extract <script type='re'> sections from each vue file and write them into corresponding .bs.js files

c) Write arbitary bsconfig.json file into __dirname/bsconfig.json

d) Run bsb -make-world against __dirname/src-cloned

e) todo: what do you do now with generated .bs.js files?

How to test manually

1. install dependencies

npm install or yarn

2. Trigger webpack build and test re-loader

npm run build or yarn build

It will trigger sync-files, bsb -make-world internally

Decisions

25 / 12 / 2017

  • We are going to rely on bsb-cli as strictly as possible

  • To allow bsb-cli to compile <script>s inside .vue files, we will extract all scripts into .vue.re files

  • Then bsb-cli will be able to compile .vue.re files located under build/loaders/compiled into js files

  • Once bsb compilation is complete without any errors, it will pipe the resulted files down to vue-loader for final bundling

26 / 12 / 2017

  • Experiment what happens when you run bsb -make-world against raw .re files

  • Find out how and when to sync files in Webpack

  • Run BSB on synced folder

  • Iteratively resolve any dependencies and use addDependency

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].