Giter Site home page Giter Site logo

anu-prakash-dev / template-meteor-react Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 2.23 MB

Meteor 1.3 + React + React-Router Template App

Home Page: http://meteor-react-template-app.madeinmoon.io/

License: MIT License

JavaScript 59.85% HTML 0.30% CSS 39.85%

template-meteor-react's Introduction

Work In Progress!! (advices, questions or contributions are very welcome!)

App screenshot


Reason to be

Provide a template app

  • react-router with page transitions (css)
  • livequery+ddp for data real-time (waiting for Apollo)
  • custom Accounts services (login etc..)
  • high order components, scalable, re-usable
  • shared, clean & safe methods.
  • UI components (material-ui and more)
  • A "clean" presentation, with Material-UI, but easily changeable

Inspired by Mantra, an architecture, breaking with the universal concept of meteor, for future-proof apps, with a high-maintainability (here.

Tech

Meteor, ES6, npm, react, react-router

Comming soon : Apollo for data abstraction, using graphQL (reactive data with mongodb, rest or sql)

It starts from

this repo: AnnotatedJS/meteor-react-start-app (Thanks to [Mr Post])(https://github.com/AnnotatedJS)!



Features

Page Transitions

Page Contents

  • PageAccount
    • Account: login, createAccount, etc..
  • PageHome
    • todo
  • PageTasks
    • Tasks (add, remove, edit, private/public, state, counter)
  • PageShowcase

Account

  • Features

    • Login / LoginGoogle/ LoginFacebook / Logout
    • CreateAccount / DeleteAccount
    • Avatar
      • avatarDisconnected
      • avatarDefault (first letter of the username)
      • avatar (input->base64->mongodb)
    • ChangeAvatar
    • VerifyEmail
    • ChangePassword
    • ForgotPassword (send email with link)
    • ResetForgotPassword (from the email link)
  • Meteor account-ui/account-ui-unstyled package deleted.

  • loginWithPassword

    • Only using meteor accounts-password api and custom css (app/scss/account.scss)
  • Result: logical, re-usable, scalable and small react components, which allow to a custom UX.

  • loginWith[Service]

    • Config: meteor add service-configuration
    • Google: meteor add accounts-google
    • Facebook: meteor add accounts-facebook
  • Actual implementation:

in PageAccount.jsx & PageResetForgotPassword.jsx:

<PageAccount/>
  <Account/>

    if(!logged)
      <AccountNotLogged/>
      -  <Login/>
      -  <LoginGoogle/>
      -  <LoginFacebook/>
      -  <ForgotPassword/>
      -  <CreateAccount/>

    if(logged)
      <AccountLogged/>
      -  <ChangeAvatar/>
           <Avatar/>
      -  <BasicInfo/>
      -  <Logout/>
      -  <ChangePassword/>
      -  <DeleteAccount/>
         if(emailIsNotVerified)
           <VerifyEmail/>


// landing on app after clicking on the email link (triggered by ForgotPassword
<PageResetForgotPassword/>
   <ResetForgotPassword/>

External Services

  • Galaxy: app hosting
  • mLab: monogdb hosting
  • A Domain Name Registrar
  • Mailgun: email service

External Api

  • Google (for login)
  • Facebook (for login)

Next Steps

  • Find the perfect folder strucutre
  • Image upload
  • More UI components
  • Full doc in the wiki
  • Integrate Apollo for data abstraction

template-meteor-react's People

Contributors

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