{"id":18284684,"url":"https://github.com/enes9103/mern_tutorial_auth","last_synced_at":"2026-04-08T18:02:20.617Z","repository":{"id":183304671,"uuid":"669291788","full_name":"enes9103/MERN_Tutorial_Auth","owner":"enes9103","description":null,"archived":false,"fork":false,"pushed_at":"2023-07-24T09:43:21.000Z","size":334,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-06T20:59:37.366Z","etag":null,"topics":["authentication-backend","authentication-service","bycryptjs","cors-request","expressjs","mongodb","moongose","nodemoon","reactbootstrap","reactjs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/enes9103.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}},"created_at":"2023-07-21T20:44:22.000Z","updated_at":"2024-04-30T18:05:59.000Z","dependencies_parsed_at":"2023-07-24T11:22:05.198Z","dependency_job_id":null,"html_url":"https://github.com/enes9103/MERN_Tutorial_Auth","commit_stats":null,"previous_names":["enes9103/mern_tutorial","enes9103/mern_tutorial_auth"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/enes9103/MERN_Tutorial_Auth","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enes9103%2FMERN_Tutorial_Auth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enes9103%2FMERN_Tutorial_Auth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enes9103%2FMERN_Tutorial_Auth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enes9103%2FMERN_Tutorial_Auth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/enes9103","download_url":"https://codeload.github.com/enes9103/MERN_Tutorial_Auth/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enes9103%2FMERN_Tutorial_Auth/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31567227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"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":["authentication-backend","authentication-service","bycryptjs","cors-request","expressjs","mongodb","moongose","nodemoon","reactbootstrap","reactjs"],"created_at":"2024-11-05T13:14:23.505Z","updated_at":"2026-04-08T18:02:20.581Z","avatar_url":"https://github.com/enes9103.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Server Kurulumu ve MongoDB Bağlantısı\n\n1. Proje oluşturma:\n   - `npm init` komutu ile projenizi oluşturun.\n   - Ana dosyanızı (örn: index.js) oluşturun ve package.json içinde main olarak belirtin.\n\n2. .env Dosyası:\n   - Projenizin root dizinine .env dosyası oluşturun ve ortam değişkenlerini burada saklayın.\n\n3. MongoDB Bağlantısı:\n   - MongoDB'ye giriş yapıp bir database oluşturun.\n   - Oluşturduğunuz database'in bağlantı bilgisini .env dosyasında saklayın.\n   - MongoDB Atlas'ta kullanıcı oluşturup yetki vererek bağlantı için kullanıcı bilgilerini .env dosyasında tutun.\n\n4. Express ve diğer paketler:\n   - `npm i express` komutu ile Express paketini yükleyin.\n   - `npm i mongoose` komutu ile MongoDB bağlantısı için Mongoose paketini yükleyin.\n   - İsteğe bağlı olarak geliştirme sırasında canlı değişiklikler için `npm i nodemon --save-dev` komutu ile nodemon paketini yükleyin.\n\n5. Express ve MongoDB Bağlantısı:\n   - Oluşturduğunuz .env dosyasını import edin ve `dotenv.config()` ile kullanın.\n   - Express uygulamasını oluşturup istediğiniz portta dinlemek için `app.listen(PORT, () =\u003e { ... })` kullanın.\n   - MongoDB bağlantısı için `mongoose.connect(process.env.DB_CONNECTION_STRING)` şeklinde bağlantı yapın.\n\n6. Models:\n   - Models klasörü altında oluşturacağınız dosyalarda mongoose Schema ile veritabanı alanlarınızı tanımlayın.\n   - Model oluşturarak Schema ve bağlantı ile ilgili işlemleri gerçekleştirin.\n\n7. Routers:\n   - Router oluşturarak farklı endpointleri ayrı dosyalarda tanımlayın.\n   - Endpointlere gelen istekleri kontrol ederek ilgili işlemleri gerçekleştirin.\n\n## Express Uygulaması ve Routers\n\n1. Express Uygulaması:\n   - Express paketini import edin: `import express from \"express\";`.\n   - Express uygulamasını oluşturun: `const app = express();`.\n   - Middleware kullanımı için `app.use()` ile express.json() ekleyin.\n\n2. Router Oluşturma:\n   - Router için yeni bir dosya oluşturun: `userRouter.js`.\n   - Express'ten router'ı çağırın: `const router = express.Router();`.\n\n3. Router ve Endpoint Tanımlama:\n   - Router içinde farklı endpointlere ve HTTP metodlarına göre işlemler tanımlayın.\n   - Örneğin, router.post('/signup', (req, res) =\u003e { ... }) ile POST isteğine göre signup işlemlerini tanımlayın.\n   - İlgili işlemleri gerçekleştirip istemciye dönecek verileri `res` nesnesi ile gönderin.\n   - Router'ı ana uygulamaya bağlamak için `app.use()` ile endpoint prefix'ini belirleyin (örn: '/users').\n\n## Diğer Notlar\n\n- `.env` dosyasında ortam değişkenlerini saklayın ve `dotenv.config()` ile kullanın.\n- MongoDB bağlantısı için MongoDB Atlas kullanabilirsiniz.\n- Express uygulamasını belirlediğiniz bir portta dinleyerek sunucu başlatın (örn: `app.listen(PORT, () =\u003e { ... })`).\n- Models klasöründe veritabanı şemalarınızı tanımlayın ve bu şemaları modele çevirerek MongoDB ile etkileşime geçin.\n- Routers klasöründe farklı endpointlere göre işlemleri tanımlayın ve bu routerları ana uygulamaya bağ\n- Projedeki CORS policy yönetmek için cors paketi kuruyoruz. (npm i cors) Bu paket sayesinde her originden gelen istekleri kabul edebiliriz. örn: app.use(cors()); veya örn: app.use(cors({origin: 'http://localhost:3000'}));","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenes9103%2Fmern_tutorial_auth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenes9103%2Fmern_tutorial_auth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenes9103%2Fmern_tutorial_auth/lists"}