https://github.com/aretecode/modern-stack-web-portfolio
Monorepo for https://github.com/aretecode/modern-stack-portfolio-graphql & https://github.com/aretecode/modern-stack-portfolio-react
https://github.com/aretecode/modern-stack-web-portfolio
apollo apollo-client apollo-link-state apollo-server firebase graphql graphql-client graphql-server indexdb jest monorepo nextjs now portfolio react redis storybook styled-components submodule typescript
Last synced: 23 days ago
JSON representation
Monorepo for https://github.com/aretecode/modern-stack-portfolio-graphql & https://github.com/aretecode/modern-stack-portfolio-react
- Host: GitHub
- URL: https://github.com/aretecode/modern-stack-web-portfolio
- Owner: aretecode
- License: mit
- Created: 2019-04-03T11:07:46.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-05-23T15:42:59.000Z (almost 6 years ago)
- Last Synced: 2025-04-03T13:44:02.638Z (about 1 month ago)
- Topics: apollo, apollo-client, apollo-link-state, apollo-server, firebase, graphql, graphql-client, graphql-server, indexdb, jest, monorepo, nextjs, now, portfolio, react, redis, storybook, styled-components, submodule, typescript
- Language: JavaScript
- Homepage: https://jameswiens.dev
- Size: 989 KB
- Stars: 10
- Watchers: 6
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Modern Stack Portfolio
[](https://snyk.io/test/github/aretecode/modern-stack-web-portfolio)
- [Project issues](https://github.com/aretecode/modern-stack-web-portfolio/projects/1)
- [Confluence](https://aretecode.atlassian.net/wiki/spaces/OSWP/overview)
- [Bitbucket](https://bitbucket.org/aretecodes/modern-stack-web-portfolio/)
- [JIRA](https://aretecode.atlassian.net/jira/software/projects/OSWPN/boards/1)
- [Trello](https://trello.com/b/veJvIgaq/modern-stack-web-portfolio)#### Monorepo for
- [modern-stack-portfolio-graphql](https://github.com/aretecode/modern-stack-portfolio-graphql)
- [modern-stack-portfolio-react](https://github.com/aretecode/modern-stack-portfolio-react)# Deploy
1. [](https://deploy.now.sh/?repo=https://github.com/aretecode/modern-stack-portfolio-graphql) _Graphql_
2. [](https://deploy.now.sh/?repo=https://github.com/aretecode/modern-stack-portfolio-react) _React_# Development
## Cloning
clone the [mono-repo](https://github.com/korfuri/awesome-monorepo) [`modern-stack-web-portfolio`](https://github.com/aretecode/modern-stack-web-portfolio)
```
git clone --recursive [email protected]:aretecode/modern-stack-web-portfolio.git
cd modern-stack-web-portfolio
git submodule foreach git checkout master
```
> if you are facing with clone, you may not have SSH key configured with your GitHub account, [follow these steps to configure yours in a few seconds](https://www.testingexcellence.com/install-git-mac-generate-ssh-keys/). Once installed, do the cloning step again.
> the submodule checkout master command is because each submodule is pointed to a specific commit, so running this command will point them to master, after which they can be used the same way any other repo is used (_pulling, merging, committing..._)
## Yarn Install
Run the following command to install all the packages
```
yarn install
```There are two sub-modules in the stack.
We are using [yarn workspaces](https://yarnpkg.com/lang/en/docs/workspaces/), so **no need** to `run yarn install` **multiple times** in each modules, running at the top level is enough.
## Run the build
> Tip: for ease of use, open two terminal windows
> #### 1. client:
```
cd packages/client
yarn dev
```Then, open [http://localhost:3000](http://localhost:3000)
#### 2. graphql:
```
cd packages/graphql
yarn dev
```Then, open [http://localhost:4000/graphql](http://localhost:4000/graphql)
## Setup the data
After you running the build, you won't see any data.

To see the content, we need to set it ourselves:
1. open [http://localhost:4000/graphql](http://localhost:4000/graphql)

2. use the following query
```jsx
mutation SetResume($basics: BasicsInputType, $work: [WorkInputType]) {
setResume(basics: $basics, work: $work) {
responseMessage
}
}
```
3. open the `Query Variables`

4. add your JSON to the `Query Variables`. [Example data can be found in this gist](https://gist.githubusercontent.com/aretecode/7da7359d3cb0e085e81822c1822d3d08/raw/331a29f90f7eb6315ae9c51c0e9df36bd6871fbd/example.json)

5. click the play/`(>)` button to run it
6. refresh the [_client_](http://localhost/3000)
7. profit???
