bluefireteam/daylight
Get the sunset and sunrise times for a geolocation without having to access any api.
- Stars
- 64
- Forks
- 13
- Last push (UTC)
- Feb 17, 2026
- Project status
- Active
LanguagesDart
Dependencies used
Dependency list 5 items
- equatable
^2.0.5 - intlDevelopment
>=0.19.0 <0.21.0 - mocktailDevelopment
^1.0.0 - testDevelopment
^1.19.2 - very_good_analysisDevelopment
>=5.1.0 <8.0.0
Original README
English project snapshot. Visit GitHub for the latest content.
Expand / collapse project README
Daylight
Pub style: very good analysis License: MIT
Get the sunset and sunrise times for a geolocation without having to access any remote api.
This is a simple implementation of the legendary Sunset/Sunrise algorithm.
Installation 💻
❗ In order to start using Daylight you must have the Dart SDK installed on your machine.
Install it:
dart pub add daylight
Usage 📖
Check the API docs, example and tests for more information about how to use it.
import 'package:daylight/daylight.dart';
final berlin = DaylightLocation(52.518611, 13.408056);
final berlinCalculator = DaylightCalculator(berlin);
final dailyResults = berlinCalculator.calculateForDay(DateTime.now(), Zenith.astronomical);
print(dailyResults.sunrise); // Some UTC datetime with sunrise hours like 08:32
print(dailyResults.sunset);
print(dailyResults.type); // day type, will probably be sunriseAndSunset unless you live near the north pole or south pole
double eventHourEpoch = berlinCalculator.calculateEvent(DateTime.now(), Zenith.official, EventType.sunset);
print(DateTime.fromMillisecondsSinceEpoch(eventHourEpoch.floor()));