├── .vscode
├── extensions.json
└── settings.json
├── .env.example
├── docs
├── img
│ ├── CORS.png
│ ├── main.png
│ ├── banner.png
│ ├── Build_Screenshot.png
│ ├── Kintone-App-Name.png
│ ├── PROJECT_DEMO_GIF.gif
│ ├── Kintone-Field-Codes.gif
│ ├── common_signup
│ │ ├── SignUp-1.png
│ │ ├── SignUp-2.png
│ │ ├── SignUp-3.png
│ │ └── SignUp-4.png
│ ├── common_kintone
│ │ ├── CreateApp-1.png
│ │ ├── CreateApp-2.png
│ │ ├── KintoneApp_URL.png
│ │ ├── KintoneApp_API_1.png
│ │ ├── KintoneApp_API_2.png
│ │ ├── Kintone-Button-Edit.png
│ │ ├── Kintone-View-Setting-Record-Count.png
│ │ └── Kintone-View-Setting-Record-Count-HD.png
│ └── common_vscode
│ │ ├── vscode-setting-extension.png
│ │ └── vscode-setting-extension-HD.png
├── Workshop_Steps.pdf
├── Event_Description.md
├── Solution_server.js
├── Zoom_Chat.md
└── Workshop_Steps.md
├── public
├── favicon.ico
└── index.html
├── src
├── index.js
├── App.css
├── components
│ ├── spinner.js
│ ├── countryPicker.js
│ ├── cityPicker.js
│ └── statePicker.js
├── requests
│ ├── getRecords.js
│ └── postRecord.js
└── App.js
├── .gitignore
├── .markdownlint.json
├── backend
├── package.json
├── server.js
└── package-lock.json
├── package.json
├── LICENSE
└── README.md
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "wayou.vscode-todo-highlight"
4 | ]
5 | }
--------------------------------------------------------------------------------
/.env.example:
--------------------------------------------------------------------------------
1 | SUBDOMAIN = "example"
2 | APPID = "1"
3 | APITOKEN = "1J22qNAR54I4eiMcd0JmfDAavJNfNJDVaqt34X9A"
--------------------------------------------------------------------------------
/docs/img/CORS.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/CORS.png
--------------------------------------------------------------------------------
/docs/img/main.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/main.png
--------------------------------------------------------------------------------
/docs/img/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/banner.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/docs/Workshop_Steps.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/Workshop_Steps.pdf
--------------------------------------------------------------------------------
/docs/img/Build_Screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/Build_Screenshot.png
--------------------------------------------------------------------------------
/docs/img/Kintone-App-Name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/Kintone-App-Name.png
--------------------------------------------------------------------------------
/docs/img/PROJECT_DEMO_GIF.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/PROJECT_DEMO_GIF.gif
--------------------------------------------------------------------------------
/docs/img/Kintone-Field-Codes.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/Kintone-Field-Codes.gif
--------------------------------------------------------------------------------
/docs/img/common_signup/SignUp-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_signup/SignUp-1.png
--------------------------------------------------------------------------------
/docs/img/common_signup/SignUp-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_signup/SignUp-2.png
--------------------------------------------------------------------------------
/docs/img/common_signup/SignUp-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_signup/SignUp-3.png
--------------------------------------------------------------------------------
/docs/img/common_signup/SignUp-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_signup/SignUp-4.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/CreateApp-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/CreateApp-1.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/CreateApp-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/CreateApp-2.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/KintoneApp_URL.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/KintoneApp_URL.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/KintoneApp_API_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/KintoneApp_API_1.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/KintoneApp_API_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/KintoneApp_API_2.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/Kintone-Button-Edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/Kintone-Button-Edit.png
--------------------------------------------------------------------------------
/docs/img/common_vscode/vscode-setting-extension.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_vscode/vscode-setting-extension.png
--------------------------------------------------------------------------------
/docs/img/common_vscode/vscode-setting-extension-HD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_vscode/vscode-setting-extension-HD.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/Kintone-View-Setting-Record-Count.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/Kintone-View-Setting-Record-Count.png
--------------------------------------------------------------------------------
/docs/img/common_kintone/Kintone-View-Setting-Record-Count-HD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kintone-workshops/React-x-REST-API-Workshop/HEAD/docs/img/common_kintone/Kintone-View-Setting-Record-Count-HD.png
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom/client';
3 | import App from './App.js';
4 |
5 | const root = ReactDOM.createRoot(document.getElementById('root'));
6 | root.render(
7 |
8 |
9 |
10 | );
11 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | .main {
2 | display: flex;
3 | flex-direction: column;
4 | align-content: center;
5 | justify-content: center;
6 | }
7 |
8 | .loadingDiv {
9 | position: absolute;
10 | top: 50%;
11 | left: 50%;
12 | transform: translate(-50%, -50%);
13 | z-index: 99;
14 | }
15 |
16 | .selectDiv {
17 | padding: 5%;
18 | }
--------------------------------------------------------------------------------
/src/components/spinner.js:
--------------------------------------------------------------------------------
1 | import { TailSpin } from 'react-loader-spinner'
2 |
3 | const LoadingSpinner = () => {
4 | return(
5 |
15 | );
16 | }
17 | export default LoadingSpinner;
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /backend/node_modules
6 | /.pnp
7 | .pnp.js
8 |
9 | # testing
10 | /coverage
11 | temp.*
12 |
13 | # production
14 | /build
15 |
16 | # misc
17 | .DS_Store
18 | .env
19 | .env.local
20 | .env.development.local
21 | .env.test.local
22 | .env.production.local
23 |
24 | npm-debug.log*
25 | yarn-debug.log*
26 | yarn-error.log*
27 |
--------------------------------------------------------------------------------
/.markdownlint.json:
--------------------------------------------------------------------------------
1 | {
2 | "MD001": false,
3 | "MD002": false,
4 | "MD006": false,
5 | "MD009": {
6 | "br_spaces": 2
7 | },
8 | "MD013": false,
9 | "MD014": false,
10 | "MD022": {
11 | "lines_below": 0
12 | },
13 | "MD024": false,
14 | "MD026": false,
15 | "MD032": false,
16 | "MD033": {
17 | "allowed_elements": ["br", "pre", "ul", "li", "ol", "details", "summary"]
18 | },
19 | "MD034": false,
20 | "MD036": false,
21 | "MD041": false,
22 | "MD051": false
23 | }
24 |
--------------------------------------------------------------------------------
/backend/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "backend",
3 | "version": "1.0.0",
4 | "description": "Express server that makes the Kintone API calls",
5 | "main": "server.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "nodemon --watch .env --watch ../frontend server.js"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 | "cors": "^2.8.5",
14 | "dotenv": "^10.0.0",
15 | "express": "^4.18.2",
16 | "nodemon": "^2.0.12"
17 | }
18 | }
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
12 | React App
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/components/countryPicker.js:
--------------------------------------------------------------------------------
1 | import { Country } from "country-state-city";
2 | import Select from 'react-select'
3 |
4 | const CountryPicker = ({selectedCountry, setSelectedCountry}) => {
5 | return(
6 |