{"id":46368624,"url":"https://github.com/uditdc/askrera","last_synced_at":"2026-03-05T03:04:08.280Z","repository":{"id":338180175,"uuid":"1153358249","full_name":"uditdc/askrera","owner":"uditdc","description":null,"archived":false,"fork":false,"pushed_at":"2026-02-13T07:20:36.000Z","size":44,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-13T14:48:00.980Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uditdc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-09T07:53:38.000Z","updated_at":"2026-02-13T07:20:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/uditdc/askrera","commit_stats":null,"previous_names":["uditdc/askrera"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/uditdc/askrera","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uditdc%2Faskrera","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uditdc%2Faskrera/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uditdc%2Faskrera/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uditdc%2Faskrera/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uditdc","download_url":"https://codeload.github.com/uditdc/askrera/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uditdc%2Faskrera/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30107653,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T01:39:18.192Z","status":"online","status_checked_at":"2026-03-05T02:00:06.710Z","response_time":93,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-05T03:03:55.876Z","updated_at":"2026-03-05T03:04:08.270Z","avatar_url":"https://github.com/uditdc.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AskRera\n\nA MahaRERA data scraping and analysis platform that automates real estate project due diligence by extracting project data from the Maharashtra RERA portal, structuring it in a database, and computing automated red flags for risk assessment.\n\n## Tech Stack\n\n- **Runtime**: Bun\n- **Language**: TypeScript\n- **Database**: PostgreSQL with Prisma ORM\n- **Scraping**: Cheerio for HTML parsing\n- **Validation**: Zod for schema validation\n\n## Project Structure\n\n```\npackages/\n├── db/          Database schema, migrations, and Prisma client\n└── scraper/     Web scraping pipeline and red flag computation\n```\n\n### packages/db\n\nDatabase layer with Prisma schema defining:\n\n- `ProjectListing` - Scraped listing data from search results\n- `Project` - Detailed project information\n- `Developer` - Promoter/developer records with canonical names and aliases\n- `Filing` - Project filings and documents\n- `Litigation` - Legal cases associated with projects\n- `RedFlag` - Automated risk indicators\n\n### packages/scraper\n\nScraping pipeline that:\n\n1. Fetches project listings from MahaRERA search endpoint\n2. Scrapes detailed project data via internal API\n3. Parses and validates data with Zod schemas\n4. Upserts to PostgreSQL via Prisma\n5. Computes red flags for each project\n\n## Setup\n\nInstall dependencies:\n\n```bash\nbun install\n```\n\nConfigure environment variables:\n\n```bash\nDATABASE_URL=postgresql://user:password@localhost:5432/askrera\nRERA_TOKEN=your_rera_api_token\n```\n\nRun database migrations:\n\n```bash\ncd packages/db\nbunx prisma migrate dev\n```\n\n## Usage\n\n### Scraper CLI\n\nThe scraper supports three modes:\n\n**Test mode** - Scrape first 5 projects:\n\n```bash\nbun run packages/scraper/src/cli.ts --mode test\n```\n\n**Daily mode** - Scrape projects modified in the last 7 days:\n\n```bash\nbun run packages/scraper/src/cli.ts --mode daily\n```\n\n**Full mode** - Scrape all projects:\n\n```bash\nbun run packages/scraper/src/cli.ts --mode full\n```\n\n### Package scripts\n\n```bash\nbun run format        # Check code formatting\nbun run format:fix    # Auto-format code\n```\n\n## Red Flags\n\nThe system automatically computes five risk indicators:\n\n1. **completion_date_delayed** - Proposed completion date extended beyond original\n2. **project_lapsed** - Project registration has lapsed\n3. **extension_granted** - Extension certificate has been issued\n4. **zero_units_registered** - No units registered (excludes migrated projects)\n5. **no_sales_recorded** - Zero sales after 1+ year of registration\n\nRed flags are derived on each scrape and automatically resolved when conditions no longer apply.\n\n## License\n\nPrivate project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuditdc%2Faskrera","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuditdc%2Faskrera","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuditdc%2Faskrera/lists"}