DEV Community

Genne23v
Genne23v

Posted on

1

Setting Telescope Dev Environment

Telescope is Seneca open source project that I need to maintain for next four months with other students in the class. The current version is 3.1.3. We will update and add more features to release 4.0.0 by the end of April.

I set up local dev environment as I contributed last year. But it was only front-end due to some issues with backend setup. My change didn't involve backend. So it's good time for me to do the full setup.

First I need to install pre-requisite tools such as Node.js, pnpm, Docker which I already have on my machine. Then I installed packages again with pnpm install because there might be some changes in dependencies. Telescope uses many dependencies built from Docker. So I ran Docker before next step. To avoid the issues from Docker using cached data, it's recommended to run docker system prune -af --volumes.

After clearing old Docker data, I could simply run pnpm services:start to run both frontend and backend on my machine. If I need a different environment setup such as staging or production, I need to copy and paste a config file. But I don't need it now. It uses default config file which is env.development. Also I can run docker-compose --env-file config/env.development up --build -d. This is equivalent to pnpm services:start.

Unlike the last setup backend setup, it seems everything is working except for one that I can't search anything. I'm getting a blocked by CORS policy with 400. I usually got this response when something was wrong. So I asked Telescope community in Slack. I found that I still needed to seed database. To do this, I need to copy ./src/db/env.example to root and run pnpm db:init. It migrates new changes to database and populates data. I have search results now!

After I struggled, some students also had similar problems. I saw one student found a root cause and raised a PR. With this help, I set up my environment much more easily. Yes, it is very important to keep the documents up-to-date all the time.

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read full post →

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more