-
Notifications
You must be signed in to change notification settings - Fork 0
Develop -> Main #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Develop -> Main #13
Changes from all commits
7c96586
c7e1b01
02d3caa
dc6a1ec
4d62451
00c71f9
38ee93a
88605e7
d969276
bb54c7f
23c9c38
f575d43
619b977
36919b2
ed6831b
219bde2
d0b22dd
9e9b4d7
192cc51
1b3ffb1
b3f384a
84b3170
79c6f7a
cce93b5
f38a5a7
c149005
90be89a
b494019
851c9c3
6b9635d
2a40ba3
26cace9
ba03712
60e70ef
ff77464
fd2e849
8b0ad8a
8d68450
6cd8b02
dc78b5d
ca84f5a
a0429bd
697260f
2bafb42
d5e8889
36aafa7
584539f
e5c8a8a
faec6e0
5f8c30e
41b3c1f
cbb59be
c47eb26
a0d42e1
4cf9e1f
c48048c
89bbb7a
ba8f786
7e22476
a8b8284
dcfa356
4816076
f3faa7c
3e715f5
a50840f
0a98726
81267ca
ac2ccc8
6fa3c09
be81d11
f89e0b3
bafccd5
79475d0
852c30a
6bb8f2a
66e44b4
8a7de14
1220580
49a6051
3abd5ef
9b7931c
0926166
4fdaa6e
0f284fb
99d9ca0
3d565a9
5dbc5ec
df87736
f08a71e
4bb242f
2bfd516
d64d1bb
f95a6f9
f150ec1
7b02e72
d7c21b1
f90d06a
44fe252
12d6967
3c06dfb
b19dc7b
80e3a53
27f2ebb
a25f1d6
3c57009
fa60573
0148bf5
8af3615
fa24b36
4651f8a
5095d24
f10e905
55a5976
d461f55
0a009cb
b756089
0987d2e
1fb90a2
03eeb39
51061c7
c5d55f5
b37112e
131d81a
64ba28a
0dbd976
3f08f5e
699af27
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| { | ||
| "env": { | ||
| "browser": true, | ||
| "es2021": true | ||
| }, | ||
| "extends": "plugin:react/recommended", | ||
| "parserOptions": { | ||
| "ecmaVersion": "latest", | ||
| "sourceType": "module" | ||
| }, | ||
| "plugins": ["react"], | ||
| "rules": { | ||
| "react/prop-types": "off", | ||
| "react/no-find-dom-node": "off", | ||
| "react/display-name": "off" | ||
| } | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,30 @@ | ||
| node_modules | ||
| .env | ||
| .DS_Store | ||
| src/.DS_Store | ||
| /build/ | ||
| coverage | ||
|
|
||
| #amplify-do-not-edit-begin | ||
| amplify/\#current-cloud-backend | ||
| amplify/.config/local-* | ||
| amplify/logs | ||
| amplify/mock-data | ||
| amplify/mock-api-resources | ||
| amplify/backend/.temp | ||
| build/ | ||
| dist/ | ||
| node_modules/ | ||
| aws-exports.js | ||
| awsconfiguration.json | ||
| amplifyconfiguration.json | ||
| amplifyconfiguration.dart | ||
| amplify-build-config.json | ||
| amplify-gradle-config.json | ||
| amplifytools.xcconfig | ||
| .secret-* | ||
| **.sample | ||
| #amplify-do-not-edit-end | ||
|
|
||
| src/utils/constants/accountConstants.js | ||
| amplify/.temp |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| { | ||
| "files.exclude": { | ||
| "amplify/.config": true, | ||
| "amplify/**/*-parameters.json": true, | ||
| "amplify/**/amplify.state": true, | ||
| "amplify/**/transform.conf.json": true, | ||
| "amplify/#current-cloud-backend": true, | ||
| "amplify/backend/amplify-meta.json": true, | ||
| "amplify/backend/awscloudformation": true | ||
| }, | ||
| "cSpell.words": ["Kontra", "KONTRAX", "Skiptrace", "skiptracing", "testid"] | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,70 +1,73 @@ | ||
| # Getting Started with Create React App | ||
|
|
||
| This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). | ||
| # KontraX: Real Estate Wholesaling App | ||
|
|
||
| ## Available Scripts | ||
| ## Introduction | ||
|
|
||
| In the project directory, you can run: | ||
| KontraX is a specialized application designed to streamline the operations of a real estate wholesaling business. By automating and optimizing various tasks and processes, KontraX enhances productivity and decision-making in managing real estate opportunities. | ||
|
|
||
| ### `npm start` | ||
| ## Purpose | ||
|
|
||
| Runs the app in the development mode.\ | ||
| Open [http://localhost:3000](http://localhost:3000) to view it in your browser. | ||
| The application aims to simplify and enhance the efficiency of the wholesaling process from lead generation to closing deals, ensuring a smooth workflow for wholesaling real estate. | ||
|
|
||
| The page will reload when you make changes.\ | ||
| You may also see any lint errors in the console. | ||
| ## Tech Stack | ||
|
|
||
| ### `npm test` | ||
| - **Front-end**: React.js | ||
| - **Back-end**: AWS Lambda Functions | ||
| - **API Requests**: Axios (front-end) | ||
| - **Database**: PostgreSQL | ||
|
|
||
| Launches the test runner in the interactive watch mode.\ | ||
| See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. | ||
| ## Features | ||
|
|
||
| ### `npm run build` | ||
| ### Main Pages | ||
|
|
||
| Builds the app for production to the `build` folder.\ | ||
| It correctly bundles React in production mode and optimizes the build for the best performance. | ||
| 1. **Dashboard**: Displays key analytics and KPIs. | ||
| 2. **Prospects**: Upload and manage property lists. | ||
| 3. **Leads**: Prioritize and manage leads. | ||
| 4. **Offer Oracle**: Assist in property analysis and offer calculation. | ||
| 5. **Offer Outreach**: Manage and track offers to sellers. | ||
| 6. **Inspections**: Guide for scheduling property inspections. | ||
| 7. **Buyers**: Manage buyer information and preferences. | ||
| 8. **Deal Deploy**: Handle deal distribution and buyer follow-up. | ||
| 9. **Title Kickstart**: Streamline communication with title companies. | ||
|
|
||
| The build is minified and the filenames include the hashes.\ | ||
| Your app is ready to be deployed! | ||
| ### Secondary Pages | ||
|
|
||
| See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. | ||
| - **Notifications**: Manage app notifications. | ||
| - **Phone Number Management**: Manage business-related phone numbers. | ||
|
|
||
| ### `npm run eject` | ||
| ## Database Schema | ||
|
|
||
| **Note: this is a one-way operation. Once you `eject`, you can't go back!** | ||
| ### Key Tables | ||
|
|
||
| If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. | ||
| - `leads` | ||
| - `buyers` | ||
| - `title_companies` | ||
| - `jv_opportunities` | ||
| - `notifications` | ||
|
|
||
| Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own. | ||
| *Detailed schema information is provided in the database schema file.* | ||
|
|
||
| You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it. | ||
| ## Roles | ||
|
|
||
| ## Learn More | ||
| - **Admin**: Oversee overall application functions. | ||
| - **Cold Callers (CCs)**: Engage in effective cold calling and lead management. | ||
| - **Acquisition Manager (AM)**: Handle sales, negotiation, and closing deals. | ||
| - **Disposition Manager (DM)**: Manage buyer interactions and deal disposition. | ||
| - **Principle**: Oversee all processes and make strategic decisions. | ||
|
|
||
| You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). | ||
| ## Development Stages | ||
|
|
||
| To learn React, check out the [React documentation](https://reactjs.org/). | ||
| 1. **Frontend Development** | ||
| 2. **Backend Integration** | ||
| 3. **User Authentication & Authorization** | ||
| 4. **Database Setup** | ||
| 5. **Testing & Quality Assurance** | ||
| 6. **Deployment & Maintenance** | ||
|
|
||
| ### Code Splitting | ||
| ## Conclusion | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting) | ||
| KontraX represents a significant advancement in real estate wholesaling management, offering comprehensive tools and features to enhance the operations of Wholesaling. | ||
|
|
||
| ### Analyzing the Bundle Size | ||
| --- | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size) | ||
|
|
||
| ### Making a Progressive Web App | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app) | ||
|
|
||
| ### Advanced Configuration | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration) | ||
|
|
||
| ### Deployment | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment) | ||
|
|
||
| ### `npm run build` fails to minify | ||
|
|
||
| This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify) | ||
| For more information on development guidelines, setup, and usage, refer to the accompanying documentation. |
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,55 @@ | ||||||
| # TODO.md | ||||||
|
|
||||||
| ## Top Nav Development To-Do List | ||||||
|
|
||||||
| - [ ] Develop Top nav with a stylish transparency but it has pageheader title + icon and also noti and settings icon | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Correct the grammar and spelling mistakes for better clarity and professionalism. - Develop Top nav with a stylish transparency but it has pageheader title + icon and also noti and settings icon
+ Develop the Top Nav with stylish transparency. It should include the page header title + icon, as well as notification and settings icons.Committable suggestion
Suggested change
|
||||||
| - [ ] Add User Id | ||||||
|
|
||||||
| ## Auth page Development To-Do List | ||||||
|
|
||||||
| - [ ] Add forgot your password feature | ||||||
| - [ ] Handle google sign in vs manual sign in caveats | ||||||
| - [ ] Fix verification code, auto sign in after success | ||||||
|
|
||||||
| ## Dashboard Development To-Do List | ||||||
|
|
||||||
| - [ ] **Overview Section** | ||||||
|
|
||||||
| - [ ] Add a refresh tab which will make call to DB api for fresh data | ||||||
| - [ ] Integration with timeline and market filters | ||||||
|
|
||||||
| - [ ] **Performance Metrics Section** | ||||||
|
|
||||||
| - [ ] Integration with timeline and market filters | ||||||
|
|
||||||
| - [ ] **Market Insights Section** | ||||||
|
|
||||||
| - [ ] Investor Activity and Interest Levels Hottest Investor markets: Use Brent's formula in that virtual youtube video to determine hottest investor markets currently | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Capitalize "YouTube" correctly for professionalism and accuracy. - Use Brent's formula in that virtual youtube video to determine hottest investor markets currently
+ Use Brent's formula in that virtual YouTube video to determine the hottest investor markets currentlyCommittable suggestion
Suggested change
|
||||||
| - [ ] Display all 'my' markets with ability to add or remove markets | ||||||
| - [ ] Display my top 3 markets based and showing # of deals closed in respective market | ||||||
| - [ ] Current deal conversion graph will be only based on my markets | ||||||
| - [ ] Remove Deals Closed Graph | ||||||
|
|
||||||
| - [ ] **Lead Source Analysis Section** | ||||||
|
|
||||||
| - [ ] Integration with timeline and market filters | ||||||
|
|
||||||
| - [ ] **Deal Lifecycle Insights Section** | ||||||
| - [ ] Analyze Deals Terminated with a Pareto chart to identify common issues from highcharts | ||||||
| - [ ] Track Deals Pending with a Kanban board visualization | ||||||
| - [ ] Highlight Key Trends for the last 5 closed deals | ||||||
| - [ ] List Progressive Strategies from the analysis of the last 5 terminated deals | ||||||
| - [ ] Implement a forecasting model for future deal closures using key conversion metrics | ||||||
| - [ ] Time Spent in Each Deal Stage: Bar graphs or line charts showing the average time deals spend in each stage of the lifecycle. This is key for identifying inefficiencies and improving the speed of deal processing. | ||||||
| - [ ] Include market filter dropdown | ||||||
| - [ ] Include timeline filter dropdown | ||||||
|
|
||||||
| ## Table Enhancements | ||||||
|
|
||||||
| - [ ] Edit/Create/Delete capabilities for leads in leads page | ||||||
|
|
||||||
| ## FilterBar Improvements | ||||||
|
|
||||||
| - [ ] Error handling if lead in data doesn't have a field | ||||||
| - [ ] Generalize filterbar more to take in toggle button properties and don't define those properties in the file itself do so in leads index | ||||||
| - [ ] Create custom FilterToggleButton component | ||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| version: 1 | ||
| backend: | ||
| phases: | ||
| build: | ||
| commands: | ||
| - "# Execute Amplify CLI with the helper script" | ||
| - amplifyPush --simple | ||
| frontend: | ||
| phases: | ||
| preBuild: | ||
| commands: | ||
| - echo "Running preBuild commands" | ||
| - if [ ! -d "node_modules" ]; then npm ci; fi | ||
| - npm install javascript-obfuscator --save-dev | ||
| - npm run lint | ||
| - npm run test | ||
| build: | ||
| commands: | ||
| - echo "Running build commands" | ||
| - npm run build || (echo "Build failed" && exit 1) | ||
| postBuild: | ||
| commands: | ||
| - echo "Running postBuild commands" | ||
| - npm run clean:css | ||
| artifacts: | ||
| baseDirectory: build | ||
| files: | ||
| - "**/*" | ||
| cache: | ||
| paths: | ||
| - node_modules/**/* |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| { | ||
| "projectName": "kontrax", | ||
| "version": "3.1", | ||
| "frontend": "javascript", | ||
| "javascript": { | ||
| "framework": "react", | ||
| "config": { | ||
| "SourceDir": "src", | ||
| "DistributionDir": "build", | ||
| "BuildCommand": "npm run-script build", | ||
| "StartCommand": "npm run-script start" | ||
| } | ||
| }, | ||
| "providers": [ | ||
| "awscloudformation" | ||
| ] | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,48 @@ | ||
| # Getting Started with Amplify CLI | ||
|
|
||
| This directory was generated by [Amplify CLI](https://docs.amplify.aws/cli). | ||
|
|
||
| Helpful resources: | ||
|
|
||
| - Amplify documentation: https://docs.amplify.aws | ||
| - Amplify CLI documentation: https://docs.amplify.aws/cli | ||
| - More details on this folder & generated files: https://docs.amplify.aws/cli/reference/files | ||
| - Join Amplify's community: https://amplify.aws/community/ | ||
|
|
||
| ## AWS Lambda Function Configuration | ||
|
|
||
| ### Overview | ||
|
|
||
| This section details the necessary environment configurations for the AWS Lambda functions used in this project. These configurations are essential for the Lambda functions to properly operate and interact with other services. | ||
|
|
||
| ### Required Environment Variables | ||
|
|
||
| 1. **API_BASE_URL** | ||
|
|
||
| - **Description**: The base URL of the API that the Lambda functions will interact with. | ||
| - **Required For**: All Lambda functions that make API calls. | ||
| - **Example Value**: `https://api.example.com/v1` | ||
| - **How to Set**: This variable should be set in the Lambda function's environment configuration in the AWS Management Console or via the AWS CLI. | ||
|
|
||
| 2. **BEARER_TOKEN_NAME** | ||
| - **Description**: The name of the bearer token stored in AWS Parameter Store, used for authenticated API calls. | ||
| - **Required For**: Lambda functions that make authenticated requests. | ||
| - **Example Value**: `kontrax_dev_batch_bearerToken` | ||
| - **How to Set**: This variable should correspond to the name of the parameter in the AWS Parameter Store. Ensure that the Lambda function's execution role has the necessary permissions to access the Parameter Store. | ||
|
|
||
| ### Setting Environment Variables | ||
|
|
||
| To set these environment variables for your Lambda functions, follow these steps: | ||
|
|
||
| 1. Navigate to the AWS Lambda console. | ||
| 2. Select the Lambda function you want to configure. | ||
| 3. In the function's configuration tab, locate the 'Environment variables' section. | ||
| 4. Click 'Edit' and add `API_BASE_URL` and `BEARER_TOKEN_NAME` with their respective values. | ||
| 5. Save your changes. | ||
|
|
||
| Make sure to repeat this process for each Lambda function that requires these environment variables. | ||
|
|
||
| ### Additional Notes | ||
|
|
||
| - Ensure that the values set for these environment variables align with your project's current configuration and the AWS services in use. | ||
| - Regularly review and update these settings to reflect any changes in your project's API or authentication mechanisms. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider adding comments explaining the rationale behind disabling specific ESLint rules. For example, if
react/prop-typesis disabled due to TypeScript usage, mentioning this can provide clarity to other developers.This helps maintain transparency and understanding within the development team.
Committable suggestion