Before I finish this, my blog is at here
- Use React.js and React-Router for Front-End and Node.js and Express.js for Back-End Data processing.
- With detailed comments, it's a good example to learn React.js and its component.
- With a user friendly manage system, users can easily edit everything in browser rather than source code (Still in development stage)
Recommand Use Google Chrome Browser
- Click the side bar, the whole page will change style(There are 4 styles in default).
- Click the cog icon on the left bottom to sign in(default username is wmzfsw and password is 123456).
- A Markdown Editor in Management System and Markdown interpreter on front-end.
- Responsive Design
- Install
npm
(skip if already have npm on your device). - Clone/Fork this repo.
- In the project's root directory, run
npm install
- Run
NODE_ENV=production npm start
(production), this step will need several to tens of seconds. - open http://localhost:8080/.
- Root
-
assets
- data
-
components -- the main directory, provide all components
- Common
- SideBar
- Home
- Experience
- Articles
- Projects
- Settings
-
public
- assets -- Static resources
- image
- projects
- css
- styles.css -- In most cases, I use inline css in components. However, for styles like :hover and media query, a stylesheet is necessary
- font-awesome.css -- font-awesome library
- fonts -- font-awesome library
- index.html -- The main page
- assets -- Static resources
-
index.js -- the router files, the entry of this app
-
App.js -- the main framework
-
server.js -- Server used to response json request
-
package.json -- npm dependencies
-
webpack.config.js -- webpack configuration
-
README.md
-
- MainFrame (
App.js
)- Navigation (
SideBar/Navigation.js
)- TopNav (
SideBar/TopNav.js
only on mobile devices)- NavLink (
Common/NavLink.js
)
- NavLink (
- SideBar (
SideBar/SideBar.js
)- Information (
SideBar/Information.js
) - SideNav (
SideBar/SideNav.js
) - Copyright (
SideBar/Copyright.js
)
- Information (
- TopNav (
- Login System (
Settins/Login and Settings/LoginForm
) - Management System (
Settings/
)- Profile Setting (
Settings/Profile
) - Project Setting (
Settings/ProjectsSetting and ProjectEditor
)
- Profile Setting (
- Children (
Home/, Experience/, Articles/ and Projects/
)
- Navigation (