{"id":24439029,"url":"https://github.com/bdefore/vtss","last_synced_at":"2026-02-17T15:32:10.866Z","repository":{"id":272801055,"uuid":"851630250","full_name":"bdefore/vtss","owner":"bdefore","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-25T20:56:41.000Z","size":3473,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-10-10T01:03:07.334Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Astro","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/bdefore.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}},"created_at":"2024-09-03T12:53:05.000Z","updated_at":"2025-02-25T20:56:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"0706d0c6-3ac5-48e0-a5ba-9401303150fe","html_url":"https://github.com/bdefore/vtss","commit_stats":null,"previous_names":["bdefore/vtss"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bdefore/vtss","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bdefore%2Fvtss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bdefore%2Fvtss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bdefore%2Fvtss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bdefore%2Fvtss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bdefore","download_url":"https://codeload.github.com/bdefore/vtss/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bdefore%2Fvtss/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29548320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T14:33:00.708Z","status":"ssl_error","status_checked_at":"2026-02-17T14:32:58.657Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"2025-01-20T19:18:26.120Z","updated_at":"2026-02-17T15:32:10.851Z","avatar_url":"https://github.com/bdefore.png","language":"Astro","funding_links":[],"categories":[],"sub_categories":[],"readme":"# About\n\nThis is a website to provide a home on the web for Vermont Synthesizer Society and its members. It lists meetups and shows and how to participate.\n\nThe site is available at https://www.vtsynth.com (or directly from Netlify at https://vtsynthsociety.netlify.app)\n\n#### Contact\n\nThe following members are available on our [Discord](https://discord.gg/NJxqtDTkxa) to help if you need anything:\n\n- Admins:\n  - @Acacia Bridge\n  - @Burial Woods\n- Developers:\n  - @tobblestop\n\nPlease reach out if the site is borked or anything is unclear or incorrect in this documentation.\n\n## Authoring Content\n\nAll members are encouraged to help update the site. Minimal technical expertise is required!\n\n#### Calendars\n\n- Calendar events are managed in two public Google calendars:\n  - [Meetups](https://calendar.google.com/calendar/u/2?cid=M2FlZjI4OGQ0MWNhNjI3ZGQxZTk3NWNjY2ZlNjEyN2NkOTZiODYyY2RiZjE5MWEzMTQ2ZWU4Yzk1NGZkNjc1Y0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t)\n  - [Shows](https://calendar.google.com/calendar/u/2?cid=YjdiMDUxYWNhY2Y0MTAxMWI4Yjg1OTA3OTllZTNjOWYwNzk4NmQ0NTIxMWYwODgzM2U0MWE2ZjVlNjY3NjdhOUBncm91cC5jYWxlbmRhci5nb29nbGUuY29t)\n- If you wish to create or update content on any VTSS calendar, provide an Admin with a Google email to add you as a collaborator.\n- Any change to these calendars will rebuild the site, typically right away but may take up to 15 minutes.\n- In calendar events, you can add a link to YouTube, Twitter, or Vimeo and it will create an embedded preview on the website. This embedding only occurs if it is on its own line.\n- When entering event data in Google Calendar, take care to format the event description carefully and let a Developer know if it doesn't look correct on the website.\n\n#### Resources and About Pages\n\n- The content on these pages is managed by a content management system (CMS). This is similar to other tools you may be familiar with like WordPress. Ours is more basic. It lives right on the site.\n- Access to the CMS requires:\n  - Create a free account on [Github](https://www.github.com). \n  - Give your Github username to a Developer to add you as a collaborator.\n- Once you're approved, visit the CMS at https://www.vtsynth.com/cms (or directly from https://www.vtsynth.com/keystatic).\n- Any changes to the CMS will create a commit on Github for you, which will trigger a rebuild of the site on Netlify. This should only take a minute or two.\n\n## Contributing to Website Development\n\nTechnical contributors are very welcome! Some expertise will be helpful in JavaScript, HTML, CSS and node.js. Here's a rough outline of how to get started. Note that these steps are used on a Linux Manjaro development machine, and may differ on other operating systems. If something is inaccurate do update this README.\n\nNo decisions have yet been made for what remains to be worked on or what tools to use to manage it. You can search the project for TODO for a few ideas.\n\n#### Overview\n\n- This is a serverside-generated (SSR) website utilizing [Astro](https://astro.build/). This means no server is needed to be maintained - all of the web content lives on static files served by a web host.\n- Astro allows us to optionally use any frontend framework to author interactive content on the client, but at this point none are used.\n- Our web host is currently Netlify, running on @bdefore's paid plan. It lives here: https://app.netlify.com/sites/vtsynthsociety \n- Content in the Resources and About pages is managed via the built-in CMS using [Keystatic](https://keystatic.com/).\n- Content in the Calendar page is gathered via the scripts in `src/node` and turned into the markdown files Astro uses to generate web content.\n\n#### Engineering Design\n\n- Keep the site free or as cheap as possible.\n- Use common technologies and avoid complexity unless it provides substantial value.\n- Empower non-technical users to contribute content to the site as easily as possible.\n- Optimize for the mobile experience foremost.\n\n#### Onboarding\n\nAsk a Developer for:\n\n- Collaborator access on the Github repo, then clone https://github.com/bdefore/vtss\n- The `.env.keys` file to place in the project root. Do not commit it into version control!\n- Access to the Netlify project\n\nNOTE: The vtsynth.com domain was registered by [@bdefore](https://github.com/bdefore) on a fresh account with Namecheap on September 10, 2024 for one year. It would be good to have more than one person who is able to manage this. Please volunteer if interested!\n\n#### Local Setup\n\n- Install node.js at the version specified in `.nvmrc`. You may want to use a node version manager like [nvm](https://github.com/nvm-sh/nvm)\n- Install [pnpm](https://pnpm.io), an alternative package manager to npm\n- Install project dependencies: `pnpm i`\n- Setup credentials for accessing our shared calendars. Only need to run once - these are stored in `/tmp`: `pnpm cal:auth`\n\n#### Development\n\n- Gather events from Google Calendar: `pnpm cal:pull`\n- Run the local development environment: `pnpm dev:network`. You should then be able to access the site at the address output in the terminal.\n- Run the linter: `pnpm lint` (or `pnpm lint:fix`). Try to do this before committing changes.\n- To mimic locally what happens in Netlify, you can run: `pnpm build`. This shouldn't be necessary unless deployments are failing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbdefore%2Fvtss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbdefore%2Fvtss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbdefore%2Fvtss/lists"}