jgentes / startupcommunity

StartupCommunity.org
1 stars 0 forks source link

Add companies by url #7

Closed jgentes closed 8 years ago

jgentes commented 8 years ago

Currently, when a user adds a company to the system, it uses the AngelList API to find a match based on the company name. If a match is found, it will:

1. Pull that company record from AngelList

  1. Search for a match in the database based on the AngelList ID
  2. If a match is found, it will show that the company already exists. If not, it will create the company.

Or, a user may decide to add the company manually, and we search based on the name to find duplicates.

The problem is that both of these approaches are based on name searches, so it's easy to add duplicates.

Instead, I'd like to have the user enter the url of the company website. Based on the url, we search locally first, then if no match is found, we search AngelList.

Here's an example of a company record:

{ "type" : "company", "profile" : { "home" : "bend-or", "name" : "StartupCommunity.org", "parents" : ["tech"], "angellist" : { "id" : 436944, "hidden" : false, "community_profile" : false, "name" : "StartupCommunity.org", "angellist_url" : "https://angel.co/startupcommunity", "logo_url" : "https://d1qb2nb5cznatu.cloudfront.net/startups/i/436944-8268f425a2dcb38cc9918f5abd2cadc3-medium_jpg.jpg?buster=1442012525", "thumb_url" : "https://d1qb2nb5cznatu.cloudfront.net/startups/i/436944-8268f425a2dcb38cc9918f5abd2cadc3-thumb_jpg.jpg?buster=1442012525", "launch_date" : null, "quality" : 4, "product_desc" : "Startups are the primary source of job creation in America. Cultivate entrepreneurship with our proven approach:\n\n1. ORGANIZE YOUR COMMUNITY\nAutomatically group people and companies by industry\n\n2. CONNECT PEOPLE\nEncourage mentorship through open communication based on roles and industry experience\n\n3. MEASURE IMPACT\nTrack startup growth and connections between people in your community and across your region\n\nYour City, Your Community\n\nYour startup ecosystem is led by individuals who champion private 'networks' or public 'industry clusters'. We help you connect accelerators, incubators, coworking spaces, mentorship groups, and investment funds, with the mentors, employees, investors, service providers, and founders who work together to support specific industry segments in your community.\n\n- Identify leaders to invite founders, mentors, investors\n- Create private, invite-only networks\n- Create public, industry-focused clusters\n- Include startup team members and service providers\n- Roll up data to a regional or state-wide level\n\nMany cities embed StartupCommunity.org into their website to provide a seamless user experience for people to view and search their startup ecosystem, all with a single line of code.", "high_concept" : "Kickstart your city’s entrepreneurial ecosystem", "follower_count" : 6, "company_url" : "https://startupcommunity.org", "created_at" : "2014-07-12T16:32:44Z", "updated_at" : "2015-09-11T23:02:11Z", "crunchbase_url" : null, "twitter_url" : "", "blog_url" : "https://startupcommunity.org/blog", "facebook_url" : "", "linkedin_url" : "", "video_url" : null, "markets" : [{ "id" : 181, "tag_type" : "MarketTag", "name" : "communities", "display_name" : "Communities", "angellist_url" : "https://angel.co/communities" }], "locations" : [{ "id" : 2300, "tag_type" : "LocationTag", "name" : "bend", "display_name" : "Bend", "angellist_url" : "https://angel.co/bend" }], "company_size" : "1-10", "company_type" : [{ "id" : 140603, "tag_type" : "CompanyTypeTag", "name" : "SaaS", "display_name" : "SaaS", "angellist_url" : "https://angel.co/saas-4" }], "status" : null, "screenshots" : [], "abilities" : { "intro" : { "can" : false, "has" : false } }, "parent" : "Tech", "stage" : "Bootstrap" }, "headline" : "Kickstart your city’s entrepreneurial ecosystem", "summary" : "Startups are the primary source of job creation in America. Cultivate entrepreneurship with our proven approach:\n\n1. ORGANIZE YOUR COMMUNITY\nAutomatically group people and companies by industry\n\n2. CONNECT PEOPLE\nEncourage mentorship through open communication based on roles and industry experience\n\n3. MEASURE IMPACT\nTrack startup growth and connections between people in your community and across your region\n\nYour City, Your Community\n\nYour startup ecosystem is led by individuals who champion private 'networks' or public 'industry clusters'. We help you connect accelerators, incubators, coworking spaces, mentorship groups, and investment funds, with the mentors, employees, investors, service providers, and founders who work together to support specific industry segments in your community.\n\n- Identify leaders to invite founders, mentors, investors\n- Create private, invite-only networks\n- Create public, industry-focused clusters\n- Include startup team members and service providers\n- Roll up data to a regional or state-wide level\n\nMany cities embed StartupCommunity.org into their website to provide a seamless user experience for people to view and search their startup ecosystem, all with a single line of code.", "avatar" : "https://d1qb2nb5cznatu.cloudfront.net/startups/i/436944-8268f425a2dcb38cc9918f5abd2cadc3-thumb_jpg.jpg?buster=1442012525", "logo" : "https://d1qb2nb5cznatu.cloudfront.net/startups/i/436944-8268f425a2dcb38cc9918f5abd2cadc3-medium_jpg.jpg?buster=1442012525", "stage" : "Bootstrap", "industries" : ["Startups", "SaaS", "Web Applications", "Community Management", "Economic Development", "Enterprise Software"]}, "communities" : ["bend-or", "startupcommunity"]}
jgentes commented 8 years ago

I made some fixes for the 'add company' workflow to fix one issue where every 'update' was creating a new company record. So be sure to pull the latest from master.

avmi commented 8 years ago

Will do, thanks

jgentes commented 8 years ago

FYI, I'm working on changes to the 'add company' workflow for the resources feature, so I'll take care of this one.