nielsr HF Staff commited on
Commit
4610d75
·
1 Parent(s): 0e43927

Add top tier only toggle

Browse files
src/data/conferences/acl.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-02-15 23:59:59'
7
  timezone: UTC-12
8
  date: July 27 - August 1, 2025
 
9
  tags:
10
  - natural-language-processing
11
  city: Vienna
@@ -23,6 +24,7 @@
23
  deadline: '2026-01-05 23:59:59'
24
  timezone: UTC-12
25
  date: July 2-7, 2026
 
26
  tags:
27
  - natural-language-processing
28
  city: San Diego
 
6
  deadline: '2025-02-15 23:59:59'
7
  timezone: UTC-12
8
  date: July 27 - August 1, 2025
9
+ era_rating: a
10
  tags:
11
  - natural-language-processing
12
  city: Vienna
 
24
  deadline: '2026-01-05 23:59:59'
25
  timezone: UTC-12
26
  date: July 2-7, 2026
27
+ era_rating: a
28
  tags:
29
  - natural-language-processing
30
  city: San Diego
src/data/conferences/bis.yml CHANGED
@@ -10,6 +10,7 @@
10
  date: June 10-12, 2026
11
  start: '2026-06-10'
12
  end: '2026-06-12'
 
13
  tags:
14
  - information-systems
15
  - machine-learning
 
10
  date: June 10-12, 2026
11
  start: '2026-06-10'
12
  end: '2026-06-12'
13
+ era_rating: b
14
  tags:
15
  - information-systems
16
  - machine-learning
src/data/conferences/colm.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-03-27 23:59:59'
7
  timezone: AoE
8
  date: October 7-9, 2025
 
9
  tags:
10
  - natural-language-processing
11
  city: Montreal
 
6
  deadline: '2025-03-27 23:59:59'
7
  timezone: AoE
8
  date: October 7-9, 2025
9
+ era_rating: a
10
  tags:
11
  - natural-language-processing
12
  city: Montreal
src/data/conferences/cvpr.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2024-11-14 23:59:00'
7
  timezone: UTC-8
8
  date: June 10-17, 2025
 
9
  tags:
10
  - computer-vision
11
  city: Nashville
@@ -29,6 +30,7 @@
29
  deadline: '2025-11-13 23:59:59'
30
  timezone: UTC-12
31
  date: June 3-7, 2026
 
32
  tags:
33
  - computer-vision
34
  - robotics
 
6
  deadline: '2024-11-14 23:59:00'
7
  timezone: UTC-8
8
  date: June 10-17, 2025
9
+ era_rating: a
10
  tags:
11
  - computer-vision
12
  city: Nashville
 
30
  deadline: '2025-11-13 23:59:59'
31
  timezone: UTC-12
32
  date: June 3-7, 2026
33
+ era_rating: a
34
  tags:
35
  - computer-vision
36
  - robotics
src/data/conferences/eccv.yml CHANGED
@@ -8,5 +8,6 @@
8
  city: Malmö
9
  country: Sweden
10
  date: September 8-13, 2026
 
11
  tags:
12
  - computer-vision
 
8
  city: Malmö
9
  country: Sweden
10
  date: September 8-13, 2026
11
+ era_rating: a
12
  tags:
13
  - computer-vision
src/data/conferences/fg.yml CHANGED
@@ -3,6 +3,7 @@
3
  id: fg26
4
  full_name: International Conference on Automatic Face and Gesture Recognition
5
  link: https://fg2026.ieee-biometrics.org/
 
6
  deadlines:
7
  - type: abstract
8
  label: Abstract Submission (Round 1)
 
3
  id: fg26
4
  full_name: International Conference on Automatic Face and Gesture Recognition
5
  link: https://fg2026.ieee-biometrics.org/
6
+ era_rating: c
7
  deadlines:
8
  - type: abstract
9
  label: Abstract Submission (Round 1)
src/data/conferences/iccv.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-03-08 09:59:59'
7
  timezone: UTC+0
8
  date: October 19-25, 2025
 
9
  tags:
10
  - machine-learning
11
  - computer-vision
 
6
  deadline: '2025-03-08 09:59:59'
7
  timezone: UTC+0
8
  date: October 19-25, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  - computer-vision
src/data/conferences/iclr.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2024-10-01 23:59:59'
7
  timezone: UTC-12
8
  date: April 24-28, 2025
 
9
  tags:
10
  - machine-learning
11
  - computer-vision
@@ -26,6 +27,7 @@
26
  link: https://iclr.cc/Conferences/2026
27
  deadline: '2025-09-24 23:59:59'
28
  abstract_deadline: '2025-09-19 23:59:59'
 
29
  deadlines:
30
  - type: abstract
31
  label: Abstract Submission
 
6
  deadline: '2024-10-01 23:59:59'
7
  timezone: UTC-12
8
  date: April 24-28, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  - computer-vision
 
27
  link: https://iclr.cc/Conferences/2026
28
  deadline: '2025-09-24 23:59:59'
29
  abstract_deadline: '2025-09-19 23:59:59'
30
+ era_rating: a
31
  deadlines:
32
  - type: abstract
33
  label: Abstract Submission
src/data/conferences/icml.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-01-30 23:59:59'
7
  timezone: UTC-12
8
  date: July 11-19, 2025
 
9
  tags:
10
  - machine-learning
11
  city: Vancouver
@@ -23,6 +24,7 @@
23
  deadline: '2026-01-28 23:59:59'
24
  timezone: UTC-12
25
  date: July 6-11, 2026
 
26
  tags:
27
  - machine-learning
28
  deadlines:
 
6
  deadline: '2025-01-30 23:59:59'
7
  timezone: UTC-12
8
  date: July 11-19, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  city: Vancouver
 
24
  deadline: '2026-01-28 23:59:59'
25
  timezone: UTC-12
26
  date: July 6-11, 2026
27
+ era_rating: a
28
  tags:
29
  - machine-learning
30
  deadlines:
src/data/conferences/icra.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2024-07-15 12:00:00'
7
  timezone: UTC-4
8
  date: May 19-23, 2025
 
9
  tags:
10
  - machine-learning
11
  - robotics
@@ -20,6 +21,7 @@
20
  id: icra26
21
  full_name: International Conference on Robotics and Automation
22
  link: https://2026.ieee-icra.org/
 
23
  deadlines:
24
  - type: submission
25
  label: Paper Submission
 
6
  deadline: '2024-07-15 12:00:00'
7
  timezone: UTC-4
8
  date: May 19-23, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  - robotics
 
21
  id: icra26
22
  full_name: International Conference on Robotics and Automation
23
  link: https://2026.ieee-icra.org/
24
+ era_rating: a
25
  deadlines:
26
  - type: submission
27
  label: Paper Submission
src/data/conferences/ijcnn.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-02-05 23:59:59'
7
  timezone: UTC-12
8
  date: June 30 - July 5, 2025
 
9
  tags:
10
  - machine-learning
11
  city: Rome
@@ -19,6 +20,7 @@
19
  deadline: '2025-09-24 23:59:59'
20
  timezone: UTC-12
21
  date: June 21-26, 2026
 
22
  tags:
23
  - machine-learning
24
  city: Maastricht
 
6
  deadline: '2025-02-05 23:59:59'
7
  timezone: UTC-12
8
  date: June 30 - July 5, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  city: Rome
 
20
  deadline: '2025-09-24 23:59:59'
21
  timezone: UTC-12
22
  date: June 21-26, 2026
23
+ era_rating: a
24
  tags:
25
  - machine-learning
26
  city: Maastricht
src/data/conferences/interspeech.yml CHANGED
@@ -11,6 +11,7 @@
11
  date: September 27-October 1, 2026
12
  start: 2026-09-27
13
  end: 2026-10-01
 
14
  tags:
15
  - speech
16
  - signal-processing
 
11
  date: September 27-October 1, 2026
12
  start: 2026-09-27
13
  end: 2026-10-01
14
+ era_rating: a
15
  tags:
16
  - speech
17
  - signal-processing
src/data/conferences/kdd.yml CHANGED
@@ -10,6 +10,7 @@
10
  date: August 3 - August 7, 2025
11
  start: '2025-08-03'
12
  end: '2025-08-07'
 
13
  tags:
14
  - data-mining
15
  - machine-learning
@@ -31,6 +32,7 @@
31
  date: August 9 - August 13, 2025
32
  start: '2026-08-09'
33
  end: '2026-08-13'
 
34
  tags:
35
  - data-mining
36
  - machine-learning
 
10
  date: August 3 - August 7, 2025
11
  start: '2025-08-03'
12
  end: '2025-08-07'
13
+ era_rating: a
14
  tags:
15
  - data-mining
16
  - machine-learning
 
32
  date: August 9 - August 13, 2025
33
  start: '2026-08-09'
34
  end: '2026-08-13'
35
+ era_rating: a
36
  tags:
37
  - data-mining
38
  - machine-learning
src/data/conferences/miccai.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2026-02-26 23:59:59'
7
  timezone: UTC-08
8
  date: October 4-8, 2026
 
9
  tags:
10
  - computer-vision
11
  deadlines:
 
6
  deadline: '2026-02-26 23:59:59'
7
  timezone: UTC-08
8
  date: October 4-8, 2026
9
+ era_rating: a
10
  tags:
11
  - computer-vision
12
  deadlines:
src/data/conferences/neurips.yml CHANGED
@@ -11,5 +11,6 @@
11
  date: December 2-7, 2025
12
  start: '2025-12-02'
13
  end: '2025-12-07'
 
14
  tags:
15
  - machine-learning
 
11
  date: December 2-7, 2025
12
  start: '2025-12-02'
13
  end: '2025-12-07'
14
+ era_rating: a
15
  tags:
16
  - machine-learning
src/data/conferences/rss.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-01-24 23:59:00'
7
  timezone: AoE
8
  date: June 21-25, 2025
 
9
  tags:
10
  - robotics
11
  - machine-learning
@@ -19,6 +20,7 @@
19
  id: rss26
20
  full_name: Robotics Science and Systems
21
  link: https://roboticsconference.org
 
22
  deadlines:
23
  - type: abstract
24
  label: Abstract Submission
 
6
  deadline: '2025-01-24 23:59:00'
7
  timezone: AoE
8
  date: June 21-25, 2025
9
+ era_rating: a
10
  tags:
11
  - robotics
12
  - machine-learning
 
20
  id: rss26
21
  full_name: Robotics Science and Systems
22
  link: https://roboticsconference.org
23
+ era_rating: a
24
  deadlines:
25
  - type: abstract
26
  label: Abstract Submission
src/data/conferences/ruleml+rr.yml CHANGED
@@ -3,6 +3,7 @@
3
  id: rulemlrr26
4
  full_name: International Joint Conference on Rules and Reasoning
5
  link: https://2026.declarativeai.net/events/ruleml-rr
 
6
  deadlines:
7
  - type: abstract
8
  label: Title and Abstract Submission (AoE)
 
3
  id: rulemlrr26
4
  full_name: International Joint Conference on Rules and Reasoning
5
  link: https://2026.declarativeai.net/events/ruleml-rr
6
+ era_rating: c
7
  deadlines:
8
  - type: abstract
9
  label: Title and Abstract Submission (AoE)
src/data/conferences/siggraph.yml CHANGED
@@ -11,5 +11,6 @@
11
  date: August 10-14, 2025
12
  start: '2025-08-10'
13
  end: '2025-08-14'
 
14
  tags:
15
  - computer-graphics
 
11
  date: August 10-14, 2025
12
  start: '2025-08-10'
13
  end: '2025-08-14'
14
+ era_rating: a
15
  tags:
16
  - computer-graphics
src/data/conferences/uai.yml CHANGED
@@ -6,6 +6,7 @@
6
  deadline: '2025-02-10 23:59:59'
7
  timezone: AoE
8
  date: July 21-25, 2025
 
9
  tags:
10
  - machine-learning
11
  city: Rio de Janeiro
@@ -19,6 +20,7 @@
19
  deadline: '2026-02-25 23:59:59'
20
  timezone: AoE
21
  date: August 17-21, 2025
 
22
  tags:
23
  - machine-learning
24
  city: Amsterdam
 
6
  deadline: '2025-02-10 23:59:59'
7
  timezone: AoE
8
  date: July 21-25, 2025
9
+ era_rating: a
10
  tags:
11
  - machine-learning
12
  city: Rio de Janeiro
 
20
  deadline: '2026-02-25 23:59:59'
21
  timezone: AoE
22
  date: August 17-21, 2025
23
+ era_rating: a
24
  tags:
25
  - machine-learning
26
  city: Amsterdam
src/data/conferences/www.yml CHANGED
@@ -5,6 +5,7 @@
5
  link: https://www2026.thewebconf.org/
6
  deadline: '2025-10-07 23:59:59'
7
  abstract_deadline: '2025-09-30 23:59:59'
 
8
  deadlines:
9
  - type: abstract
10
  label: Abstract deadline on 2025-09-30 23:59:59 UTC-12!
 
5
  link: https://www2026.thewebconf.org/
6
  deadline: '2025-10-07 23:59:59'
7
  abstract_deadline: '2025-09-30 23:59:59'
8
+ era_rating: a
9
  deadlines:
10
  - type: abstract
11
  label: Abstract deadline on 2025-09-30 23:59:59 UTC-12!
src/pages/Index.tsx CHANGED
@@ -10,7 +10,8 @@ import { extractCountry } from "@/utils/countryExtractor";
10
  import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover";
11
  import { Button } from "@/components/ui/button";
12
  import { Checkbox } from "@/components/ui/checkbox";
13
- import { X, ChevronRight, Filter, Globe } from "lucide-react";
 
14
  import { getAllCountries } from "@/utils/countryExtractor";
15
  import { getDeadlineInLocalTime } from "@/utils/dateUtils";
16
  import { sortConferencesByDeadline } from "@/utils/conferenceUtils";
@@ -21,6 +22,7 @@ const Index = () => {
21
  const [selectedCountries, setSelectedCountries] = useState<Set<string>>(new Set());
22
  const [searchQuery, setSearchQuery] = useState("");
23
  const [showPastConferences, setShowPastConferences] = useState(false);
 
24
 
25
  // Dynamically generate category buttons from conference data
26
  const categoryButtons = useMemo(() => {
@@ -58,6 +60,9 @@ const Index = () => {
58
  // Filter by deadline (past/future) - use new deadline logic
59
  if (!showPastConferences && !hasUpcomingDeadlines(conf)) return false;
60
 
 
 
 
61
  // Filter by tags
62
  const matchesTags = selectedTags.size === 0 ||
63
  (Array.isArray(conf.tags) && conf.tags.some(tag => selectedTags.has(tag)));
@@ -76,7 +81,7 @@ const Index = () => {
76
 
77
  // Use the proper sorting function that handles both deadline formats
78
  return sortConferencesByDeadline(filtered);
79
- }, [selectedTags, selectedCountries, searchQuery, showPastConferences]);
80
 
81
  // Update handleTagsChange to handle multiple tags
82
  const handleTagsChange = (newTags: Set<string>) => {
@@ -207,6 +212,27 @@ const Index = () => {
207
  />
208
  </div>
209
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
210
  <div className="flex items-center gap-2 bg-white p-2 rounded-md shadow-sm">
211
  <Popover>
212
  <PopoverTrigger asChild>
 
10
  import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover";
11
  import { Button } from "@/components/ui/button";
12
  import { Checkbox } from "@/components/ui/checkbox";
13
+ import { X, ChevronRight, Filter, Globe, HelpCircle } from "lucide-react";
14
+ import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@/components/ui/tooltip";
15
  import { getAllCountries } from "@/utils/countryExtractor";
16
  import { getDeadlineInLocalTime } from "@/utils/dateUtils";
17
  import { sortConferencesByDeadline } from "@/utils/conferenceUtils";
 
22
  const [selectedCountries, setSelectedCountries] = useState<Set<string>>(new Set());
23
  const [searchQuery, setSearchQuery] = useState("");
24
  const [showPastConferences, setShowPastConferences] = useState(false);
25
+ const [showTopTierOnly, setShowTopTierOnly] = useState(true);
26
 
27
  // Dynamically generate category buttons from conference data
28
  const categoryButtons = useMemo(() => {
 
60
  // Filter by deadline (past/future) - use new deadline logic
61
  if (!showPastConferences && !hasUpcomingDeadlines(conf)) return false;
62
 
63
+ // Filter by top tier (ERA A-rated conferences)
64
+ if (showTopTierOnly && conf.era_rating !== 'a') return false;
65
+
66
  // Filter by tags
67
  const matchesTags = selectedTags.size === 0 ||
68
  (Array.isArray(conf.tags) && conf.tags.some(tag => selectedTags.has(tag)));
 
81
 
82
  // Use the proper sorting function that handles both deadline formats
83
  return sortConferencesByDeadline(filtered);
84
+ }, [selectedTags, selectedCountries, searchQuery, showPastConferences, showTopTierOnly]);
85
 
86
  // Update handleTagsChange to handle multiple tags
87
  const handleTagsChange = (newTags: Set<string>) => {
 
212
  />
213
  </div>
214
 
215
+ <div className="flex items-center gap-2 bg-white p-2 rounded-md shadow-sm">
216
+ <label htmlFor="top-tier-only" className="text-sm text-neutral-600 flex items-center gap-1">
217
+ Top tier only
218
+ <TooltipProvider>
219
+ <Tooltip>
220
+ <TooltipTrigger asChild>
221
+ <HelpCircle className="h-3.5 w-3.5 text-neutral-400 hover:text-neutral-600 cursor-help" />
222
+ </TooltipTrigger>
223
+ <TooltipContent side="top" className="max-w-xs">
224
+ <p>Filter on only conferences which have an ERA rating of A according to <a href="http://www.conferenceranks.com/" target="_blank" rel="noopener noreferrer" className="text-blue-600 hover:underline">conferenceranks.com</a></p>
225
+ </TooltipContent>
226
+ </Tooltip>
227
+ </TooltipProvider>
228
+ </label>
229
+ <Switch
230
+ id="top-tier-only"
231
+ checked={showTopTierOnly}
232
+ onCheckedChange={setShowTopTierOnly}
233
+ />
234
+ </div>
235
+
236
  <div className="flex items-center gap-2 bg-white p-2 rounded-md shadow-sm">
237
  <Popover>
238
  <PopoverTrigger asChild>
src/types/conference.ts CHANGED
@@ -35,4 +35,5 @@ export interface Conference {
35
  commitment_deadline?: string;
36
  paperslink?: string;
37
  pwclink?: string;
 
38
  }
 
35
  commitment_deadline?: string;
36
  paperslink?: string;
37
  pwclink?: string;
38
+ era_rating?: string; // ERA rating (e.g., 'a', 'b', 'c')
39
  }