Coder Social home page Coder Social logo

faizanq / jpvcdb Goto Github PK

View Code? Open in Web Editor NEW

This project forked from moflo/jpvcdb

1.0 2.0 0.0 1.7 MB

An open source clone of the very popular ycdb built to track Japanese startups

Home Page: https://jpvcdb.firebaseapp.com/

License: MIT License

JavaScript 91.16% CSS 8.84%

jpvcdb's Introduction

JP.VC.DB

MobileFlow Next Firebase Ant Design Template

An open source clone the very popular ycdb to encourage similary investment visibility and anlaysis for other investment organizations or, in our case, whole countries. SEO optimized, performant, opinionated React/Next/AntDesign/Firebase template app with fast loading landing page with lazy-loading of Firebase data using a simple provider class. Demo available here.

With code and inspiration from Sam Lolla Firefly and react-firestore, with design support from ManyPixkes.

Based on create-next-app and initially built using with-firebase-hosting

npx create-next-app --example with-firebase-hosting with-firebase-hosting-app
Download manually

Download the example:

curl https://codeload.github.com/zeit/next.js/tar.gz/canary | tar -xz --strip=2 next.js-canary/examples/with-firebase-hosting
cd with-firebase-hosting
Set up firebase
  • install Firebase Tools: npm i -g firebase-tools
  • create a project through the firebase web console
  • grab the projects ID from the web consoles URL: https://console.firebase.google.com/project/<projectId>
  • update the .firebaserc default project ID to the newly created project
  • login to the Firebase CLI tool with firebase login
Install Project
npm install

Run Next.js development:

npm run dev

Run Firebase locally for testing:

npm run serve

Deploy it to the cloud with Firebase:

npm run deploy

Clean dist folder

npm run clean
Bitbucket repo

Clone from Bitbucket repo

git remote add bitbucket [email protected]:mobileflowllc/jpvcdb.git
git push -u bitbucket master

Serverless hosting with Firebase

Using Firebase hosting with NextJS generated SSR design files. This should allow for easier setup (add new pages via /pages subdirectory) and better SEO (using next-seo to configure, but also SSR generates 'static' home/blog/faq pages as needed).

Customization

Ant Design themeing for both landing page and application controls. Use the Ant Designsummary page and style sheet guide to customize the look & feel.

The directory structure in the src/app folder is as follows:

|____pages
| |____about.js
| |____index.js
| |____login.js
| |____dashboard.js
|____credentials
| |____client.js
|____landing
| |____Home.js
| |____Header.js
| |____Banner.js
| |____Page1.js
| |____static
| | |____style.js
| | |____default.less
| | |____home.less
| | |____footer.less
| | |____header.less
| | |____responsive.less
|____components
| |____App.js
| |____Header.js
| |____Home.js
| |____Login.js
|____asserts
| |____styles.less
| |____antd-custom.less
|____static
| |____logo-word-white.png
|____lib
| |____redirect.js
| |____auth.js
| |____firebaseManager.js
|____next.config.js
|____next-seo.config.js
|____scripts

The Firebase configuration is contained in credentials/client.js and is used the by the firebaseManager.js singleton to manage authorization, etc.

The home / landing page is index.js by default, and loads an Ant Design stylized landing page from landing/Home.js with custom less styling from within the landing/static directory.

The application page is dashboard and contains custom application components from the components directory. Current functionality is limited to allowing admins to create and edit company data. Extensive use of Firebase admin scripts is made to migrate and shape data. See the scripts directory.

Both the application and landing page use the @zeit/next-less loading methods as specified within next.config.js file, which loads the default Ant Design style sheets and applies overrides using the files contained within asserts/antd-custom.less.

TODO

  1. Clean up admin CRUD functions, issues with AntD image uploader component within forms
  2. Add i18next language support using HOC for AntD
  3. Populate data with Japanese startup cohort data

jpvcdb's People

Contributors

moflo avatar

Stargazers

Faizan Qureshi avatar

Watchers

James Cloos avatar Faizan Qureshi 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.