Coder Social home page Coder Social logo

inox's Introduction

INOX

This project is under development, we have no stable release at the moment :)

INOX is a social media plattform in a twitter like style to allow creative and innovative people to exchange their knowledge and get connected. The main ideas are:

  • The portal is structured in feeds where users can contribute and talk about innovative topics. [in work]
  • User can follow users, get updates and chat [pending]
  • Users are able to search for certain topics [pending]

Version

0.0.1

Technology

INOX tries to use the current cutting edge technologies in both server and client side aspects.

  • RESTful Backend Server with NodeJS
  • Document-oriented database using MongoDB
  • Reactive Frontend using ReactJS
  • ES2015 (ES6) and JSX syntax which is transipiled with BabelJS and SystemJS
  • JSPM is used as package manager and to bundle the ES2015 (ES6) Modules

Installation

You need a current version of NodeJS to be able to use this project.

As we're using JSPM as package manager you should install jspm globally:

$ npm install jspm -g

Then you can install the JSPM dependencies:

$ jspm install

Following with installing the Node Dependencies:

$ npm install

Now you can start the Backend Server which is also serving the client content:

$ node server.js

Configuration

We are using the dotenv module to set the environment. Simply create a .env file containing following variables:

  • SECRET : Secret for the password encryption (default: enteryoursecrethere)
  • DB_URL : Url to the MongoDB instance (default: mongodb://localhost:27017/inox)
  • PORT : Port of the backend server (default: 8080)
  • EMBEDLY_KEY: API Key for your Embedly Account (default: '')
  • IN_PRODMODE: Pages will consume bundled React component. You have to create bundle to be able to use this mode (default: '0');

Generate test-data

When you are developing the project it might be useful the create some dummy test-data. We supplied you with a test-data generator:

$ node setupDB.js

Example

Here is an example of the current state of the project. Be aware that I'm not using https at the moment, so please use some kind of dummy password

License

Gnu GPL V2

inox's People

Contributors

gonzochic avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

inox's Issues

Organize deployment

It should be able to deploy the software automatically. This means also do bundle the components and deploy a page to the user which uses the bundled javascript files.

Remove jquery dependency

We don't need it and it takes some time to fetch from the server. Remove it for example from the infinite scrolling logic of the entry list (see #10)

Add styling

At the moment there is only some plain bootstrap which styles the page. For the first release we should add a super fancy layout. Style matters ;).

Reload entries when posting

After refactoring the feed component is not able to reload entries after the post. Added a comment on the regarding line.

Server side rendering

Instead of loading the initial data set on page load, we could speed things up be rendering the initial dataset on the server.

Add a chat

It should be possible to be able to chat i real-time with friends

Capture linebreaks from input

When using line breaks when creating comments the line breaks are not captured which results in a lost format when the entry is posted to the DB. It would also be super nice to support markdown.

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.